Skip to main content

pycedar

version python license

Python binding of cedar (implementation of efficiently-updatable double-array trie) using Cython

日本語版の README は README.ja.md にあります。

Official URL of cedar: http://www.tkl.iis.u-tokyo.ac.jp/~ynaga/cedar/

Requirements

  • Python 3.9 or newer
  • A POSIX-compatible 64-bit platform (Linux, macOS)
  • A C++ compiler, when building from source

The extension is tested with CPython 3.9 through 3.14 on Linux and macOS.

Installation

install from PyPI release

$ pip install --user pycedar

install from GitHub master

$ pip install --user https://github.com/akivajp/pycedar/archive/master.zip

Usage

using python-like dict class based on double array trie

>>> import pycedar

>>> d = pycedar.dict()
>>> len(d)
0
>>> bool(d)
False
>>> list(d)
[]

>>> d['nineteen'] = 19
>>> d.set('twenty', 20)
20
>>> d['twenty one'] = 21
>>> d['twenty two'] = 22
>>> d['twenty three'] = 23
>>> d['twenty four'] = 24

>>> len(d)
6
>>> bool(d)
True
>>> list(d)
['nineteen', 'twenty', 'twenty four', 'twenty one', 'twenty three', 'twenty two']
>>> list(d.keys())
['nineteen', 'twenty', 'twenty four', 'twenty one', 'twenty three', 'twenty two']
>>> list(d.values())
[19, 20, 24, 21, 23, 22]
>>> list(d.items())
[('nineteen', 19), ('twenty', 20), ('twenty four', 24), ('twenty one', 21), ('twenty three', 23), ('twenty two', 22)]
>>> d['twenty four']
24
>>> 'twenty four' in d
True
>>> del d['twenty four']
>>> 'twenty four' in d
False
>>> d['twenty four']
Traceback (most recent call last):
    ...
KeyError: 'twenty four'
>>> d.get('twenty three')
23
>>> d.get('twenty four')       # the default is base_trie.NO_VALUE
-1
>>> d.get('twenty four', None) is None
True

Prefix queries return generators:

>>> list(d.find(''))
[('nineteen', 19), ('twenty', 20), ('twenty one', 21), ('twenty three', 23), ('twenty two', 22)]
>>> list(d.find('tw'))
[('twenty', 20), ('twenty one', 21), ('twenty three', 23), ('twenty two', 22)]
>>> list(d.find('twenty t'))
[('twenty three', 23), ('twenty two', 22)]
>>> list(d.find_keys('twenty'))
['twenty', 'twenty one', 'twenty three', 'twenty two']
>>> list(d.find_values('twenty'))
[20, 21, 23, 22]

Nodes let you keep a position in the trie and search relative to it:

>>> n = d.get_node('twenty')
>>> n.key()
'twenty'
>>> n.value()
20
>>> [child.key() for child in n.find_nodes(' t')]
[' three', ' two']

>>> d.get_node('twenty ') is None    # a path without a value
True

Saving and loading:

>>> d.save('test.dat')
0
>>> d2 = pycedar.dict()
>>> d2.setdefault('eighteen', 18)
18
>>> list(d2.items())
[('eighteen', 18)]
>>> d2.load('test.dat')              # replaces the whole trie image
0
>>> list(d2.items())
[('nineteen', 19), ('twenty', 20), ('twenty one', 21), ('twenty three', 23), ('twenty two', 22)]
>>> d2.setdefault('eighteen', 18)
18
>>> list(d2.items())
[('eighteen', 18), ('nineteen', 19), ('twenty', 20), ('twenty one', 21), ('twenty three', 23), ('twenty two', 22)]

using bytes keys

pycedar.dict is parameterised by its key type, which is enforced strictly:

>>> b = pycedar.dict(bytes)
>>> b[b'cedar'] = 1
>>> b[b'cedarpp'] = 2
>>> list(b.items())
[(b'cedar', 1), (b'cedarpp', 2)]
>>> b['str key'] = 3
Traceback (most recent call last):
    ...
TypeError: Argument 'key' has incorrect type (expected bytes, got str)

str keys are encoded as UTF-8 before they reach cedar, so lengths reported by the low level API are byte lengths, not character counts.

using more primitive data structures

pycedar.dict is a thin convenience layer over the trie classes. You can use them directly when you want cedar's raw semantics.

>>> t = pycedar.str_trie()
>>> t.set('apple', 1)
1
>>> t.set('applet', 2)
2
>>> t.set('apply', 3)
3

>>> t.exact_match_search('apple')      # (value, length, node id)
(1, 5, 259)
>>> t.exact_match_search('app')[0]     # a prefix carries no value
-1

>>> t.common_prefix_search('applet')   # every key that prefixes the query
[('apple', 1, 259), ('applet', 2, 368)]
>>> [key for key, value, node_id in t.common_prefix_predict('app')]
['le', 'let', 'ly']

>>> t.erase('apply')
0
>>> t.erase('apply')                   # already gone
-1
>>> t.num_keys()
2

Note the difference between the two prefix queries:

  • common_prefix_search(key) returns the complete keys that are prefixes of key.
  • common_prefix_predict(key) returns the remaining suffixes of every key that starts with key.

Enumerating a trie (or a subtree) uses begin / next:

>>> result, from_id, pos = t.traverse('app')   # locate the subtree
>>> value, node_id, length = t.begin(from_id, pos)
>>> while value != pycedar.base_trie.NO_PATH:
...     print(t.suffix(node_id, length), value)
...     value, node_id, length = t.next(node_id, length, from_id)
apple 1
applet 2

API reference

pycedar.base_trie

Base class for every trie. Not meant to be instantiated directly.

Member Description
NO_VALUE -1. Returned when a node exists but carries no value.
NO_PATH -2. Returned when the path does not exist, and used as the traversal terminator.
root The node object for the trie root.
clear(reuse=True) Drop all keys.
capacity(), size(), length(), total_size(), unit_size(), nonzero_size(), nonzero_length(), num_keys() cedar's internal statistics. num_keys() is the number of registered keys.
begin(from_id=0, length=0) Start an enumeration. Returns (value, node_id, length).
next(node_id, length, root=0) Advance an enumeration. Returns (value, node_id, length).
open(filepath, mode='rb', offset=0, size=0) Load a trie image. Returns 0 on success, -1 on failure.
save(filepath, mode='wb', shrink=True) Write a trie image. Returns 0 on success, -1 on failure.

pycedar.str_trie / pycedar.bytes_trie / pycedar.unicode_trie

Specialisations of base_trie for str keys, bytes keys, and unicode keys respectively. On Python 3, unicode is str, so unicode_trie behaves identically to str_trie and is kept only for backward compatibility.

In addition to the base_trie members:

Method Description
set(key, value) Register key with value. Returns the stored value. Raises KeyError for an empty key.
update(key, delta=0) Register key if needed and add delta to its value. Returns the new value.
erase(key, from_id=0) Remove key. Returns 0 on success, -1 if it was not registered.
exact_match_search(key, from_id=0) Returns (value, length, node_id). value is NO_VALUE / NO_PATH when not found.
common_prefix_search(key, from_id=0, max_size=-1) Returns a list of (key, value, node_id) for every key that prefixes key.
common_prefix_predict(key, from_id=0, max_size=-1) Returns a list of (suffix, value, node_id) for every key starting with key.
traverse(key, from_id=0, pos=0) Follow key from from_id. Returns (value, node_id, pos).
suffix(node_id, length=0) Reconstruct the key ending at node_id.

max_size caps the number of returned results; -1 means "no limit". from_id scopes the query to a subtree.

pycedar.node

A cursor into a trie. Obtained from base_trie.root, dict.root, dict.get_node(), dict.nodes() or node.find_nodes().

Member Description
id, length, root Read-only position information.
key() The key this node represents, relative to root.
value() The value stored at this node.
track() Returns (id, length, root).
traverse(key) Generator yielding (value, node_id, length) for the subtree under key.
find_nodes(key) Generator yielding node objects for the subtree under key.
get_node(key) The node for key, or None if it is absent or carries no value.

pycedar.dict

A dict-like façade over a trie. pycedar.dict(key_type) accepts str (the default) or bytes.

Member Description
trie, root, type The underlying trie, its root node, and the key type.
d[key] The value, or KeyError.
d[key] = value Register a key. KeyError for an empty key.
del d[key] Remove a key, or KeyError.
key in d, len(d), iter(d) Membership, number of keys, iteration over keys.
get(key, default=NO_VALUE) The value, or default.
set(key, value) Register a key. Returns the stored value.
setdefault(key, value=0) Register only if absent. Returns the effective value.
update(key, delta=0) Add delta to a key's value, registering it if needed.
clear() Drop all keys.
keys(), values(), items(), nodes() Generators over the whole trie.
find(prefix), find_keys(prefix), find_values(prefix) Generators scoped to prefix.
get_node(key) The node for key, or None.
save(filepath, mode='wb', shrink=True) Write a trie image. Returns 0 / -1.
load(filepath, mode='rb') Replace the trie with a stored image. Returns 0 / -1.

pycedar.__version__ exposes the installed package version.

Limitations

Values are C int sized, and two of them are reserved

Values are stored as C int, so they must fit in -2**31 .. 2**31-1; anything larger raises OverflowError.

-1 and -2 are cedar's sentinels — base_trie.NO_VALUE and base_trie.NO_PATH — and every writer rejects them:

>>> limited = pycedar.dict()
>>> limited['key'] = -1
Traceback (most recent call last):
    ...
ValueError: -1 is reserved and cannot be stored: ...

update() checks the resulting value rather than the delta, because a perfectly ordinary delta can still land on a sentinel. When it does, the delta is rolled back and the stored value is left untouched:

>>> limited['counter'] = 1
>>> limited.update('counter', -3)     # 1 + (-3) == -2
Traceback (most recent call last):
    ...
ValueError: -2 is reserved and cannot be stored: ...
>>> limited['counter']
1

Every other value round trips, negative ones included.

Before 0.3.0 these two were accepted and silently corrupted the trie: -1 made a key invisible to in, get() and d[key] while leaving it visible to iteration, and -2 ended every traversal early, hiding each key that came after it. If you are upgrading and were storing either, the values were not being read back correctly in the first place.

The serialization format is platform-dependent and unauthenticated

The native cedar .dat format depends on the pointer size and byte order of the machine that wrote it, and it carries no integrity checks. Only load files produced by pycedar on a compatible platform and obtained from a trusted source.

I/O failures are reported through return codes

save() / load() / open() return 0 on success and -1 on failure instead of raising; check the return value.

Running out of memory is the exception to that rule: save() and load() raise MemoryError rather than returning -1. A failed load() leaves the trie empty, because the previous contents are released before the new ones are allocated. The instance stays valid and can be reused. See pycedar/core/cedar/README.md.

Development

$ python -m pip install --upgrade pip
$ python -m pip install . pytest
$ pytest

To rebuild in place while iterating on pycedar.pyx:

$ python -m pip install "Cython>=3.1,<4" setuptools
$ python setup.py build_ext --inplace

./clean.sh removes build artifacts.

Benchmarks

benchmarks/bench.py times the operations pycedar is used for. Run it against two builds to check whether a change actually paid off:

$ python benchmarks/bench.py --label before
$ python benchmarks/bench.py --label after

It uses rich for the table when that is installed, and plain text otherwise. --help lists the knobs.

Releasing

The version lives in a single place, pycedar/VERSION.

  1. Update pycedar/VERSION and CHANGELOG.md.
  2. Commit and push to master.
  3. Push a matching tag, e.g. git tag v0.2.0 && git push origin v0.2.0.

The release workflow verifies that the tag matches pycedar/VERSION, builds the sdist and the Linux/macOS wheels with cibuildwheel, and publishes them to PyPI via Trusted Publishing.

License

pycedar is distributed under the same terms as cedar itself: GPLv2, LGPLv2.1 and BSD-2-Clause. See the license files bundled under pycedar/core/cedar/.

Credits

cedar is written by Naoki Yoshinaga. The copy vendored under pycedar/core/cedar/ carries local modifications. pycedar/core/cedar/README.md records what was changed and why, why the 2022 upstream tarball was deliberately not re-vendored, and what has to be re-applied if anyone syncs with a newer release.

See CHANGELOG.md for the list of contributors to each release.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pycedar-0.3.1.tar.gz (246.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pycedar-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

pycedar-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

pycedar-0.3.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pycedar-0.3.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pycedar-0.3.1-cp314-cp314-macosx_11_0_arm64.whl (194.5 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pycedar-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl (202.6 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

pycedar-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pycedar-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

pycedar-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pycedar-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pycedar-0.3.1-cp313-cp313-macosx_11_0_arm64.whl (192.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pycedar-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl (201.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

pycedar-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pycedar-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

pycedar-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pycedar-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pycedar-0.3.1-cp312-cp312-macosx_11_0_arm64.whl (191.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pycedar-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl (198.3 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

pycedar-0.3.1-cp311-cp311-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pycedar-0.3.1-cp311-cp311-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

pycedar-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pycedar-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pycedar-0.3.1-cp311-cp311-macosx_11_0_arm64.whl (198.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pycedar-0.3.1-cp311-cp311-macosx_10_9_x86_64.whl (205.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pycedar-0.3.1-cp310-cp310-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

pycedar-0.3.1-cp310-cp310-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

pycedar-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pycedar-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pycedar-0.3.1-cp310-cp310-macosx_11_0_arm64.whl (198.1 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pycedar-0.3.1-cp310-cp310-macosx_10_9_x86_64.whl (205.8 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pycedar-0.3.1-cp39-cp39-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

pycedar-0.3.1-cp39-cp39-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

pycedar-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pycedar-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pycedar-0.3.1-cp39-cp39-macosx_11_0_arm64.whl (199.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pycedar-0.3.1-cp39-cp39-macosx_10_9_x86_64.whl (206.8 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file pycedar-0.3.1.tar.gz.

File metadata

  • Download URL: pycedar-0.3.1.tar.gz
  • Upload date:
  • Size: 246.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pycedar-0.3.1.tar.gz
Algorithm Hash digest
SHA256 340efa6e1ffa90fefc7b60fc4979559aa4f99a0bc0c2ecb5d3fde0364c5dceea
MD5 7eb1ccdcae53dd35fa80398ea6667647
BLAKE2b-256 ce0ec9b46b2848d9f1bc06abd6f6940f327795cddf2d09c081630ba7ad248ce5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1.tar.gz:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cd885b023c33ff17f1a1fbf8741d419974f2603da78ede11e227d3c2ccdb14a0
MD5 1900eb3149b6dfc9844fcc9fafa28cf9
BLAKE2b-256 71f57cea4216dfcce22bb7d3e354989cce146302eb41c935249d6bd4165da0af

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 905e0e3568d9d41e0e46aaa65235da2001cd432c7c8cc80a3eb1cb62d11dc2ad
MD5 eeb05a222d1cb91256c2ae28402307fc
BLAKE2b-256 3368eca5f9814338dd319e0aab934ff7e0ef3e812221821627410405b8e0f372

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b9b58856072fe3fb09f149bd7ab9b450aec6f249070ec8746b80fd702d0bf89e
MD5 0e1ebb11c07b4be4471c2dca56b48c15
BLAKE2b-256 3f3660e032b9388f1dd000150a49c26b59ddb4febb7eee0f1e428afbe8839223

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 43827da7c7fb94f21f4f695baf698f41d793855e7479456ea35f31110848a513
MD5 f26fea713900e3abb7cddac56a1fbeb7
BLAKE2b-256 644275bce4707e9097baef100aa0b2e48cef97d611c11ef9dc9839d700e23a7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 62b3a8d9316ef0ce132a86ea2a72413576c126a592e3522a29f97283ebc27204
MD5 bd1d42967c5f4dacf0cc5faea145305e
BLAKE2b-256 5dc2be4b9663c18d2a809ed4a23f755e784efd78a9b0cc698f3ebacebeb194a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 7f28c34eed8f8cf5de67e53b382a0bb916272d9364e0b8dc8c7f3e7df6409817
MD5 2da651d03aaa01759c38f0b1047b2f64
BLAKE2b-256 42ef45665b9a7c377f3af57b68b92177c86fc71c3262827cf48f97466c340487

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 12eaef45b63196a5afd33f5f8e7702e9771e3b26cebd4042aa367a04c8f6576a
MD5 5014b06006df399e6e1568d8fe6f66ef
BLAKE2b-256 f35bf47b539d5039e1ebcf58e556287b62eb19b75ef9784ab323f05b15154b35

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 9c4e26370c33d15942774630a044eb236b6788ca42dcdac818f16565020bd082
MD5 59c789040887c2e3074568f31bb7d4ec
BLAKE2b-256 68990fb7866fa11ebd8ba50953b5990eea3bcceefb0760e18ccadcb7a9994a62

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f256a60aae164c6b2289f27129cb44ef44d2f2a01c3dd4825038a1669ea45445
MD5 3f18c4a37432623eca43fe5a26fbb399
BLAKE2b-256 9b74a4b1334d57b69a9ac923a6f53d181be21536aae08ab57eb252b1f3af7b0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2f9362f58c2d4f85abba1e9e2171c60be5fe8aa8cfda35f326dededfd5d2f6d3
MD5 d8700fd30a00c2c6f9e0ea068ec49724
BLAKE2b-256 c514a18df30fe1c24029210f061c70e5a1b16266a1bd80eed0b0f58901ad2423

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d560f8f1759f355479e5deff647370a7fc77dfcf01af019fd4abbdeaf78cdf8b
MD5 060986a3704e1e6641c6e06c14c4a08e
BLAKE2b-256 a0f5c76400661d5eb1198190dd79b9dfe5727ca899635e84e1ed2947cf3dd408

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f4797326ce0d5fd41174dad858402a9a3d9e4d23ed9ebaa202c56ef59df7fcf5
MD5 f4d5cbacf3b5680c3db1ad6b745a063c
BLAKE2b-256 08fcf4a06ca7604f59edc84539637e19582a42ddae5d08397009430b5c69585d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3af40a42ae78f9051bab64f8b7812bf5d947d394249cb9571f47ab8e97b94463
MD5 8a1c8a6621329c5939cc9b0fe390bf69
BLAKE2b-256 cfcb0fc1b6909bfba306c5b5637f42303317d59a835ed9e186e2714982690ee7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 29ed1ad1eba9a8a559ff1eb1c128270fb8120f1f1cba3e861a494d1c01d83987
MD5 09e3f29705979dbcaaa73c4ef615f9e5
BLAKE2b-256 a3f8bae1c12cb369436db0e3412457fe4a12af6c08defbddcc7a41750429614e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c9f2511aa2f59348b25f8a83aa8c92077b3bdfb91149639ddaab24f9deb5e214
MD5 6fae8d52f205dc0ca87494066c640162
BLAKE2b-256 8cc8ad2717697ad9ed5d8a86085c3b7c866faebab4564825f8d8c41a02cf42d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c12098b8745fefba330d982d558bad71a9a62877db66cd7c494614c1f933a1c7
MD5 feacf297a33171b28077666a381aa95f
BLAKE2b-256 3b61f54f08e0bc0b0de50b20e75332c0b29abaac3e250ee5d8dd961c05fa2d56

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b52116a8e7f81832213adb20b9757e0fc28de70308598d36aa6e643c6151a3a7
MD5 c5b3d8f896f6d261693103f8d8b609d3
BLAKE2b-256 ea47f95349cecc18a52c8d879251712e24d47708dfdbdf58a2e7e2b1825571d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 7f1addda4c5d9467ac36215be4404625b569002680e0ce4a70afba4119817c36
MD5 6fec0398960e1ec91f0d3f87ddd66eae
BLAKE2b-256 535e46b6f5a6d64810c28ef4d528db849edfa50b2799580734ffb049825a9b0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 79cd9c979da367982969f50de144afb410ae576053d2b2b87fa64a16b6928c19
MD5 1e0030e98de57c4412b7a50fb8d95e05
BLAKE2b-256 382f1814f110368d3a7858673ab7ccd3ccb8bebfcf86ad81eeaf904ccc0ef4db

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 11d48b2e6e7da89adcf177527a239941e50ebaffe76aab8427f96cefd2bf601f
MD5 e89c2eeefd32507cf61b9d3c2fc52e5b
BLAKE2b-256 fb56b28490d5df14f7646db1662a58c0489e925c01fe62844335a5656521fb08

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cf20874ff43790293730c747df86795b214cb2ce601d765cd2fb032e61a0a1c3
MD5 9bd12479f1332c1142c6200a2684ecb7
BLAKE2b-256 a2feeb487ab71841e3f70008f47ae57755ac1be8fa4f77cc1d135f314f9cef78

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d3a97f91e83547a2e2444d166785160af79327397d9f6e6945348704e935c944
MD5 0d1e3669cc293a4b9a43145f0b99ae28
BLAKE2b-256 273cfed5cd2520d8f780113d4175b149f617288d15da04cec2d27d1ae31e6bbc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 572044b075ac3691ff533a0a3daa29c4534ec8b7ada9b14858a015f325fefcd1
MD5 71968e64b660df0e25085db4a578490d
BLAKE2b-256 c97ecc4b0aaf26a83a98eb7bd686e4daf3dcc3a93469e55822d4eb9a717d0235

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7bc0cb6481d84ab2bce6161ef25ed3a11bc785c5079b3b7574970eb8a6d77f0c
MD5 fc37c2fd1e8a038a0042b82b4f593a9e
BLAKE2b-256 c634fa26d5dc32589693cf0daf3d262766dfe0c1d4cbab71bbe97b53877348dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 437d19180eef7a060bd207126937d23f96cae70b918af0c36cfaa67d07538900
MD5 1816596c2c90e017f69d274a849f7113
BLAKE2b-256 10eeb1660bef862e3a2e9c67b5dc0c6635804ac10b0c4931564fb005fe6db5cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0bfb233aa3021fc70069cc742efcf6167c84afb8eb21feb49394d512c10b82d8
MD5 e888012bf9bfa8241775d5d184c82af4
BLAKE2b-256 fcc7ca8d57b276e4c4b7e99aff803a58ecb5f1598c76de584311792ce98285e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1161df90e76d157ec169716dc244acbaa31a48f15f55495ed129f519406cdc2b
MD5 0fb935b95bf024946bc9e867849a54c6
BLAKE2b-256 2dc6cd404568d693dc5085a86b6e650f49ad1f79a1cf164d2d9e958afce230fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5d5c5e53357ea1c185334e33109a0955d20cb0dfd0f374f53a4ed43f2fe92db9
MD5 dad3068c1c72d98417ccd3c74a7af3a2
BLAKE2b-256 c7502f9633dad5eb114d03c4d6bbcfd7d06f3dd4a1537e9744b8b8963b6f163c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 46a2a0354699c0c8efa5cc0243463d57278c3b91ff5c66d8a6524c47abd02ff2
MD5 f9f031a90c0fac9d7eb084a16cb04231
BLAKE2b-256 355940dfa2f14eca82915d8d0542c9794dcd089d87a8e8e49a737d73ad07d71d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 48bde3b8934605cc368369dbe8099d4836ea1ceddbe3ded80b4ccf4ddd8143ef
MD5 f1262be0776d10ef67d34f2c54769915
BLAKE2b-256 9e8a07356b693b5daf99335790782c27214ab8b0a28163a801ccef789ce65abb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 14445bef7f8a0817f1149637614b7473f3d4740572c1653d65ccc473cc44d011
MD5 cad3684e34dda30a288f1ce72e773c9d
BLAKE2b-256 2e5238cdecd168d87c672f98377c03fbf7b6a6398391f1603de3c07def667a29

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 860d8ea533409c725c4acfa40ad10a5c9772ccc9ca459c98d76d058d4b73b03a
MD5 35cd9def413d597060df3abf1eee43a4
BLAKE2b-256 0fdf4f034becb387e3f93ba803227e9998a4bbf42c7f656ff88e0e3d9277d804

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp39-cp39-musllinux_1_2_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 46618d065f20be114516ed5cf6083e9b54e5cda0fcf3309ba343750eb85f7dca
MD5 2643cdf852bd69ed387c2d2ded19e233
BLAKE2b-256 132793e82e4eceed96b9a6ca2288ddec9aec743cf7061a9cf9a0deb24046d746

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8c430ad8f200f539a042f2e5452ec56cfc5d147cbe904b7757c5a4060fb6512b
MD5 c5444099a9e02776704e9ade79fda58b
BLAKE2b-256 5a3ce20a61d1dad5fd7d1d564cf7ad9de25f567953e9af0e75317d629c14d984

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a924824e1289abafdb09826a47689e3a456394c7ffbb4149846c6dec850f0259
MD5 2ae192a0fc24afae1ee4d18e74492b2e
BLAKE2b-256 e3483befc5b6217fdd0dba8f3c225e3506e69a21a442e2c26a642d5c3daad1c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycedar-0.3.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pycedar-0.3.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b460632d0d839c3041b7c0850d4eb466f95ff717cc0beb5919a878dca851e5e2
MD5 92e5ae2920071965d33374203866a617
BLAKE2b-256 7397bc0cbd7d3131a7a27a0dcc7c91dca96f1a8f11b5a65af90ae42b9f71cb0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycedar-0.3.1-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: release.yml on akivajp/pycedar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.6.1

55 files

0.6.0

50 files

0.5.0

37 files

0.4.0

37 files

This release

0.3.1 This release

37 files

0.3.0

37 files

0.2.2

37 files

0.2.1

37 files

0.2.0

37 files

0.1.3

9 files

0.1.2

9 files

0.1.1

1 file

0.0.4

3 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