Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

C++ and Python Arrow Bindings for casacore

arcae implements a limited subset of functionality from the more mature python-casacore package. It bypasses some existing limitations in python-casacore to provide safe, multi-threaded access to CASA formats, thereby enabling export into newer cloud native formats such as Apache Arrow and Zarr.

Rationale

casacore and the python-casacore Python bindings provide access to the CASA Table Data System (CTDS) and Measurement Sets created within this system. The CTDS, as of casacore 3.5.0 is subject to the following limitations:

Resolving these concerns is potentially a major effort, involving invasive changes across the CTDS system.

In the time since the CTDS was developed, newer, open-source formats such as Apache Arrow and Zarr have been developed that are suitable for representing Radio Astronomy data.

  • The Apache Arrow project defines a programming language portable in-memory columnar storage format.

  • Translating CTDS data to Arrow is relatively simple, with some limitations mentioned below.

  • It’s easy to convert Arrow Tables between many different languages

  • Once in Apache Arrow format, it is easy to store data in modern, cloud-native disk formats such as parquet and Zarr.

  • Converting CASA Tables to Arrow in the C++ layer avoids the GIL

  • Access to non thread-safe CASA Tables is constrained to a ThreadPool containing a single thread

  • It also allows us to write astrometry routines in C++, potentially side-stepping thread-safety and GIL issues with the CASA Measures server.

Limitations

Arrow supports both 1D arrays and nested structures:

  1. Fixed shape multi-dimensional data (i.e. visibility data) is currently represented as nested FixedSizeListArrays .

  2. Variably-shaped multi-dimensional (i.e. subtable data) is currently represented as nested ListArrays.

  3. Complex values are represented as an extra FixedSizeListArray nesting of two floats.

  4. Currently, it is not trivially trivial (repetition intended here) to convert between the above and numpy via to_numpy calls on Arrow Arrays, but it is relatively trivial to reinterpret the underlying data buffers from either API. This is done transparently in getcol and putcol functions (see usage below).

Going forward, FixedShapeTensorArray and VariableShapeTensorArray will provide more ergonomic structures for representing multi-dimensional data. First class support for complex values in Apache Arrow will require implementing a C++ extension type within Arrow itself:

Some other edge cases have not yet been implemented, but could be with some thought.

  • Columns with unconstrained rank (ndim == -1) whose rows, in practice, have differing dimensions. Unconstrained rank columns whose rows actually have the same rank are catered for.

  • Not yet able to handle TpRecord columns. Probably simplest to convert these rows to json and store as a string.

  • Not yet able to handle TpQuantity columns. Possible to represent as a run-time parametric Arrow DataType.

Installation

Binary wheels are providing for Linux and MacOSX for both x86_64 and arm64 architectures

$ pip install arcae

Usage

Example usage with Arrow Tables:

import json
from pprint import pprint

import arcae
import pyarrow as pa
import pyarrow.parquet as pq

# Obtain (partial) Apache Arrow Table from a CASA Table
casa_table = arcae.table("/path/to/measurementset.ms")
arrow_table = casa_table.to_arrow()        # read entire table
arrow_table = casa_table.to_arrow(index=(slice(10, 20),)
assert isinstance(arrow_table, pa.Table)

# Print JSON-encoded Table and Column keywords
pprint(json.loads(arrow_table.schema.metadata[b"__arcae_metadata__"]))
pprint(json.loads(arrow_table.schema.field("DATA").metadata[b"__arcae_metadata__"]))

pq.write_table(arrow_table, "measurementset.parquet")

Some reading and writing functionality from python-casacore is replicated, with added support for some NumPy Advanced Indexing.

casa_table = arcae.table("/path/to/measurementset.ms", readonly=False)
# Get rows 10 and 2, and channels 16 to 32, and all correlations
data = casa_table.getcol("DATA", index=([10, 2], slice(16, 32), None))
# Write some modified data back
casa_table.putcol("DATA", data + 1*1j, index=([10, 2], slice(16, 32), None))

See the test cases for further use cases.

Multi-threaded read support

When opening a CASA table, arcae can open multiple instances of the table in separate threads and multiplex read operations over them. This mode of operation is intended to saturate the number of I/O requests in-flight by submitting read operations from multiple threads:

import concurrent.futures as cf

table = arcae.table("/path/to/measurementset.ms", ninstances=8, readonly=True)
with cf.ThreadPoolExecutor(max_workers=8) as pool:
  nrow = table.nrow()
  futures = []
  for start_row in range(0, nrow, 10_000):
  nrow = min(10_000, nrow - start_row)
    futures.append(pool.submit(table.getcol, "DATA", startrow=start_row, nrow=nrow))

  with cf.as_completed(futures):
    ...

Multi-threaded write support

arcae only supports writing when a single instance of the table is opened (ninstances=1). Writing to a table when multiple instances are opened is an unsafe operation and arcae will error if this is attempted. Future versions of arcae may support this. In the meantime, the support for this ability can be inspected via the arcae.safe_multithread_writes function:

assert not arcae.safe_multithreaded_writes()

table = arcae.table("/path/to/measurementset.ms", ninstances=8, readonly=False)
table.putcol("DATA", ...)  # Fails, ninstances > 1

Bounding storage manager cache sizes

casacore’s Tiled Storage Managers use unbounded caches by default: reading a large Measurement Set lets the cache grow until it holds much of the MS in memory. Because arcae opens ninstances independent table instances, each with its own caches, this growth is multiplied by the instance count.

The cache_size argument to arcae.table bounds these caches. It accepts an integer shorthand, or a flat, prefixed dictionary offering three levels of granularity, resolved with precedence column: > stman: > default:

# Global default of 256 MiB for every storage manager
table = arcae.table("/path/to/measurementset.ms", cache_size=256)

# Fine-grained control
table = arcae.table("/path/to/measurementset.ms", cache_size={
    "default": 128,                # global default for unmatched columns
    "stman:TiledData": 256,        # per storage manager
    "column:WEIGHT_SPECTRUM": 32,  # per column
})

# Restore the historical unbounded behaviour
table = arcae.table("/path/to/measurementset.ms", cache_size=0)

Notes:

  • All sizes are in MiB.

  • None (the default) applies a bounded default of 128 MiB; 0 restores the historical unbounded behaviour.

  • A per-column cap physically targets that column’s storage manager (casacore caps the whole storage manager), so columns sharing a hypercolumn share the cap — last write wins.

  • The cap is applied to every opened instance, so the worst-case resident cache is roughly ninstances × (number of tiled storage managers) × cache_size MiB.

  • Unknown stman: / column: names, malformed keys, and non-integer or negative values are rejected with a clear error.

Exporting Measurement Sets to Arrow Parquet Datasets

Install the applications optional extra.

pip install arcae[applications]

Then, an export script is available:

$ arcae export /path/to/the.ms --nrow 50000
$ tree output.arrow/
output.arrow/
├── ANTENNA
│   └── data0.parquet
├── DATA_DESCRIPTION
│   └── data0.parquet
├── FEED
│   └── data0.parquet
├── FIELD
│   └── data0.parquet
├── MAIN
│   └── FIELD_ID=0
│       └── PROCESSOR_ID=0
│           ├── DATA_DESC_ID=0
│           │   ├── data0.parquet
│           │   ├── data1.parquet
│           │   ├── data2.parquet
│           │   └── data3.parquet
│           ├── DATA_DESC_ID=1
│           │   ├── data0.parquet
│           │   ├── data1.parquet
│           │   ├── data2.parquet
│           │   └── data3.parquet
│           ├── DATA_DESC_ID=2
│           │   ├── data0.parquet
│           │   ├── data1.parquet
│           │   ├── data2.parquet
│           │   └── data3.parquet
│           └── DATA_DESC_ID=3
│               ├── data0.parquet
│               ├── data1.parquet
│               ├── data2.parquet
│               └── data3.parquet
├── OBSERVATION
│   └── data0.parquet

This data can be loaded into an Arrow Dataset:

>>> import pyarrow as pa
>>> import pyarrow.dataset as pad
>>> main_ds = pad.dataset("output.arrow/MAIN")
>>> spw_ds = pad.dataset("output.arrow/SPECTRAL_WINDOW")

Etymology

Noun: arca f (genitive arcae); first declension A chest, box, coffer, safe (safe place for storing items, or anything of a similar shape)

Pronounced: ar-ki.

Metadata

Release files for arcae 0.4.0a9

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

Source distribution (sdist)

Source distribution for arcae 0.4.0a9
File Size Uploaded
arcae-0.4.0a9.tar.gz 119.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for arcae 0.4.0a9
File
arcae-0.4.0a9-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
arcae-0.4.0a9-cp314-cp314-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64 Details
arcae-0.4.0a9-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
arcae-0.4.0a9-cp314-cp314-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 macOS 14.0+ ARM64 Details
arcae-0.4.0a9-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
arcae-0.4.0a9-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
arcae-0.4.0a9-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
arcae-0.4.0a9-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
arcae-0.4.0a9-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
arcae-0.4.0a9-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
arcae-0.4.0a9-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
arcae-0.4.0a9-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
arcae-0.4.0a9-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
arcae-0.4.0a9-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
arcae-0.4.0a9-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
arcae-0.4.0a9-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details

Total release size: 167.9 MB

Release files / arcae-0.4.0a9.tar.gz

Download URL arcae-0.4.0a9.tar.gz
Size 119.8 kB
Tags Source
SHA-256 checksum
How to use checksums
0a4ad019507bf55a348ff558275f93e323c0b698e8cea9b8b01f416bc8c27999
BLAKE2b-256 checksum
How to use checksums
76c813248385919fdf2b325871e23fb1c291a945990c1cf0d0b3efb33514ad0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL arcae-0.4.0a9-cp314-cp314-manylinux_2_28_x86_64.whl
Size 17.1 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
39887bf0329f5f1a826fe585a24c0b815830df68495d99d4d3c630a0a02f236a
BLAKE2b-256 checksum
How to use checksums
d2bb38a97581ac319ed76eed25f9f0662495f15e9610ece6dfc4f2b47cd11d5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp314-cp314-manylinux_2_28_aarch64.whl

Download URL arcae-0.4.0a9-cp314-cp314-manylinux_2_28_aarch64.whl
Size 16.4 MB
Tags CPython 3.14 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
8e2ef379ae9b9317459e1b367e5265b161d76ff0d29e331b4316908327cf3e53
BLAKE2b-256 checksum
How to use checksums
f74a09e295f2d2cbff8683e9895782f549585582ea0123270a3ab3141e06c37c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp314-cp314-macosx_15_0_x86_64.whl

Download URL arcae-0.4.0a9-cp314-cp314-macosx_15_0_x86_64.whl
Size 4.4 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
b1a9c46806e1a1b2cca5542c47943e4f77ebdd80c0e6295507f3f9b5d2b18915
BLAKE2b-256 checksum
How to use checksums
0ca2ac250547a80af95cb76cbf03c34be15ef3a04843f28c12cb15c5080eeecf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp314-cp314-macosx_14_0_arm64.whl

Download URL arcae-0.4.0a9-cp314-cp314-macosx_14_0_arm64.whl
Size 4.1 MB
Tags CPython 3.14 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
a3b47c6095e938a502fa2a53cd1f21b0089abccd4ee40db179b03cf9b9e63877
BLAKE2b-256 checksum
How to use checksums
4ab3834404da14f705b8cb45403bcde9d2b040603fc3f430c300d8d05063ef35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL arcae-0.4.0a9-cp313-cp313-manylinux_2_28_x86_64.whl
Size 17.1 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d3abc39229e72df664ef9ad315756cb8540978082583a8e9b16e3e95e6ddbc08
BLAKE2b-256 checksum
How to use checksums
6c8f6998c1611e261c514201f200dab072359c1540688a3b7bbf5c85246ccd66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL arcae-0.4.0a9-cp313-cp313-manylinux_2_28_aarch64.whl
Size 16.4 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
7c087707c7139602b6cd9be131c4c27e21ae74dfc87c2284425896d29240202c
BLAKE2b-256 checksum
How to use checksums
24fb17e9c59e8194517a431019d4b4093a15baf34fc8abbd146496048d455fff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp313-cp313-macosx_15_0_x86_64.whl

Download URL arcae-0.4.0a9-cp313-cp313-macosx_15_0_x86_64.whl
Size 4.4 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
70c5c0cb728683839bc7be24545526f6a37480b46d453d5f4a971cf3377ab88c
BLAKE2b-256 checksum
How to use checksums
a18facac8065d0133ba522aed492b145d80495e8f752805c45a0ab5d099e25c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp313-cp313-macosx_14_0_arm64.whl

Download URL arcae-0.4.0a9-cp313-cp313-macosx_14_0_arm64.whl
Size 4.1 MB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
e22de97660712e8e5ccb94a483b01d00b170a8817df8abe81c6f1b5ac5273dfe
BLAKE2b-256 checksum
How to use checksums
34774bcba786149e3430ddfcdca4c0f2304a478523d7c67c21c95d8b38528d8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL arcae-0.4.0a9-cp312-cp312-manylinux_2_28_x86_64.whl
Size 17.1 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
25668bb6712e4127cbe0d413219e46a3037614efca9b3d18466413fe75c187b6
BLAKE2b-256 checksum
How to use checksums
c7c3dfe2c98294e4c3c445abbebf7034ba55f3c154d802948030aed18d931d3d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL arcae-0.4.0a9-cp312-cp312-manylinux_2_28_aarch64.whl
Size 16.4 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e89540e1bf78da04154077497c8511b79e98f5dd10558eef3fabd48a5c211f09
BLAKE2b-256 checksum
How to use checksums
50e5721078383a529a86b69707aeb8fe40642fcd693b751b7919af091f4dfe55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp312-cp312-macosx_15_0_x86_64.whl

Download URL arcae-0.4.0a9-cp312-cp312-macosx_15_0_x86_64.whl
Size 4.4 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
e0104df2162d6798cdc8b1ae8d9c87f24d2821e7aa979ec0665ec11352e2f8c8
BLAKE2b-256 checksum
How to use checksums
7e518038272bbeeb686e5c20762df90f64cdb0ae8fa79475d3554bbc8f152d74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp312-cp312-macosx_14_0_arm64.whl

Download URL arcae-0.4.0a9-cp312-cp312-macosx_14_0_arm64.whl
Size 4.1 MB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
583bbf5d594a6dabff4b797575b498a16fc32d333f275e317ec7c2afb7b1d8c1
BLAKE2b-256 checksum
How to use checksums
1303749100d263a5c1d4ff56597e0d63d9c0f8b70b57370436d01f536b8e3aae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL arcae-0.4.0a9-cp311-cp311-manylinux_2_28_x86_64.whl
Size 17.0 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
67caa78a59671518d1849f0b7a8a6fd149bfce2ac8c3bf5febfd5f34e454f707
BLAKE2b-256 checksum
How to use checksums
9a613f56d7400d66aa5892f6b118640d9e4dd4b45e04618878f72a2eda082b01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL arcae-0.4.0a9-cp311-cp311-manylinux_2_28_aarch64.whl
Size 16.3 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
fe2a94557bb489694fcfa57ae071f24845d95f3214051683bcced4f1f2eaadad
BLAKE2b-256 checksum
How to use checksums
976c136f9d4faf39629443843f17d24da5b622e34e1a8c253baeb0def1d023f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp311-cp311-macosx_15_0_x86_64.whl

Download URL arcae-0.4.0a9-cp311-cp311-macosx_15_0_x86_64.whl
Size 4.4 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
f4cc6a3a7f3692db4fbe37ed3ffd3791a0986fdbe44a5ecb5f62dbf87d219046
BLAKE2b-256 checksum
How to use checksums
70b1f5deb75c5b058da8d58845aa6eb4eaf9855cb6cdc8f154848aeb53cb1d52
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / arcae-0.4.0a9-cp311-cp311-macosx_14_0_arm64.whl

Download URL arcae-0.4.0a9-cp311-cp311-macosx_14_0_arm64.whl
Size 4.1 MB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
94c06815b4a0b8f75f9dd1203ccd9ed9cc1148a2673611b2bad19ee3d8ab4a24
BLAKE2b-256 checksum
How to use checksums
22ab784b3c45007fe0afbe17d865b1a72ddc2b8be78b57c693f70a3bb7491cdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

0.5.5

17 release files

0.5.4

17 release files

0.5.2

17 release files

0.5.0

17 release files

This release

0.4.0a9 This release

17 release files

0.3.2

17 release files

0.3.1

17 release files

0.3.0

17 release files

0.2.9

13 release files

0.2.8

13 release files

0.2.7

13 release files

0.2.6

13 release files

0.2.3

17 release files

0.2.2

5 release files

0.2.1

5 release files

0.2.0

5 release files

0.1.0

5 release files

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