Skip to main content

SONATA files reader

Project description

banner

license coverage documentation status

libsonata

C++ / Python reader for SONATA circuit files: SONATA guide

Installation

Installing from PyPI

pip install libsonata

Installing as a Python package, directly from GitHub

pip install git+https://github.com/openbraininstitute/libsonata

Building the C++ library

git clone git@github.com:openbraininstitute/libsonata.git --recursive
cd libsonata
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DEXTLIB_FROM_SUBMODULES=ON ..
make -j

Since libsonata uses backports for std::optional and std::variant which turn into their actual STL implementation once available, it’s recommended to compile libsonata with the same C++ standard as the project linking to libsonata. This is done by passing -DCMAKE_CXX_STANDARD={14,17} to the cmake command above.

Usage (Python)

Nodes

NodeStorage
>>> import libsonata

>>> nodes = libsonata.NodeStorage('path/to/H5/file')

# list populations
>>> nodes.population_names

# open population
>>> population = nodes.open_population(<name>)
NodePopulation
# total number of nodes in the population
>>> population.size

# attribute names
>>> population.attribute_names

# get attribute value for single node, say 42
>>> population.get_attribute('mtype', 42)

# ...or Selection of nodes (see below) => returns NumPy array with corresponding values
>>> selection = libsonata.Selection(values=[1, 5, 9, 42])  # nodes 1, 5, 9, 42
>>> mtypes = population.get_attribute('mtype', selection)
>>> list(zip(selection.flatten(), mtypes))
[(1, u'mtype_of_1'), (5, u'mtype_of_5'), (9, u'mtype_of_9'), (42, u'mtype_of_42')]
Selection

List of element IDs (either node_id, or edge_id) where adjacent IDs are grouped for the sake of efficient HDF5 file access. For instance, {1, 2, 3, 5} sequence becomes {[1, 4), [5, 6)}.

Selection can be instantiated from:
  • a sequence of scalar values (works for NumPy arrays as well)

  • a sequence of pairs (interpreted as ranges above, works for N x 2 NumPy arrays as well)

EdgePopulation connectivity queries (see below) return Selections as well.

>>> selection = libsonata.Selection([1, 2, 3, 5])
>>> selection.ranges
[(1, 4), (5, 6)]
>>> selection = libsonata.Selection([(1, 4), (5, 6)])
>>> selection.flatten()
[1, 2, 3, 5]
>>> selection.flat_size
4
>>> bool(selection)
True
Node Sets

libsonata can work with the Node Set concept, as described here: SONATA guide: Node Sets File This allows the definition of names for groups of cells, and a way to query them. libsonata also allows for extended expressions, such as Regular expressions,and floating point tests, as described here: SONATA extension: Node Sets

# load a node set JSON file
>>> node_sets = libsonata.NodeSets.from_file('node_sets.json')

# list node sets
>>> node_sets.names
{'L6_UPC', 'Layer1', 'Layer2', 'Layer3', ....}

# get the selection of nodes that match in population
>>> selection = node_sets.materialize('Layer1', population)

# node sets can also be loaded from a JSON string
>>> node_sets_manual = libsonata.NodeSets(json.dumps({"SLM_PPA_and_SP_PC": {"mtype": ["SLM_PPA", "SP_PC"]}}))
>>> node_sets_manual.names
{'SLM_PPA_and_SP_PC'}

Edges

EdgeStorage

Population handling for EdgeStorage is analogous to NodeStorage:

>>> edges = libsonata.EdgeStorage('path/to/H5/file')

# list populations
>>> edges.population_names

# open population
>>> population = edges.open_population(<name>)
EdgePopulation
# total number of edges in the population
>>> population.size

# attribute names
>>> population.attribute_names

# get attribute value for single edge, say 123
>>> population.get_attribute('delay', 123)

# ...or Selection of edges => returns NumPy array with corresponding values
>>> selection = libsonata.Selection([1, 5, 9])
>>> population.get_attribute('delay', selection) # returns delays for edges 1, 5, 9

…with additional methods for querying connectivity, where the results are selections that can be applied like above

# get source / target node ID for the 42nd edge:
>>> population.source_node(42)
>>> population.target_node(42)

# query connectivity (result is Selection object)
>>> selection_to_1 = population.afferent_edges(1)  # all edges with target node_id 1
>>> population.target_nodes(selection_to_1)  # since selection only contains edges
                                             # targeting node_id 1 the result will be a
                                             # numpy array of all 1's
>>> selection_from_2 = population.efferent_edges(2)  # all edges sourced from node_id 2
>>> selection = population.connecting_edges(2, 1)  # this selection is all edges from
                                                   # node_id 2 to node_id 1

# ...or their vectorized analogues
>>> selection = population.afferent_edges([1, 2, 3])
>>> selection = population.efferent_edges([1, 2, 3])
>>> selection = population.connecting_edges([1, 2, 3], [4, 5, 6])

Reports

SpikeReader
>>> import libsonata

>>> spikes = libsonata.SpikeReader('path/to/H5/file')

# list populations
>>> spikes.get_population_names()

# open population
>>> population = spikes['<name>']
SpikePopulation
# get all spikes [(node_id, timestep)]
>>> population.get()
[(5, 0.1), (2, 0.2), (3, 0.3), (2, 0.7), (3, 1.3)]

# get all spikes betwen tstart and tstop
>>> population.get(tstart=0.2, tstop=1.0)
[(2, 0.2), (3, 0.3), (2, 0.7)]

# get spikes attribute sorting (by_time, by_id, none)
>>> population.sorting
'by_time'

Pandas can be used to create a dataframe and get a better representation of the data
>>> import pandas

data = population.get()
df = pandas.DataFrame(data=data, columns=['ids', 'times']).set_index('times')
print(df)
       ids
times
0.1      5
0.2      2
0.3      3
0.7      2
1.3      3
SomaReportReader
>>> somas = libsonata.SomaReportReader('path/to/H5/file')

# list populations
>>> somas.get_population_names()

# open population
>>> population_somas = somas['<name>']
SomaReportPopulation
# get times (tstart, tstop, dt)
>>> population_somas.times
(0.0, 1.0, 0.1)

# get unit attributes
>>> population_somas.time_units
'ms'
>>> population_somas.data_units
'mV'

# node_ids sorted?
>>> population_somas.sorted
True

# get a list of all node ids in the selected population
>>> population_somas.get_node_ids()
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]

# get the DataFrame of the node_id values for the timesteps between tstart and tstop
>>> data_frame = population_somas.get(node_ids=[13, 14], tstart=0.8, tstop=1.0)

# get the data values
>>> data_frame.data
[[13.8, 14.8], [13.9, 14.9]]

# get the list of timesteps
>>> data_frame.times
[0.8, 0.9]

# get the list of node ids
>>> data_frame.ids
[13, 14]

Once again, pandas can be used to create a dataframe using the data, ids and times lists

>>> import pandas

df = pandas.DataFrame(data_frame.data, columns=data_frame.ids, index=data_frame.times)
print(df)
       13    14
0.8  13.8  14.8
0.9  13.9  14.9
ElementReportReader
>>> elements = libsonata.ElementReportReader('path/to/H5/file')

# list populations
>>> elements.get_population_names()

# open population
>>> population_elements = elements['<name>']
ElementReportPopulation
# get times (tstart, tstop, dt)
>>> population_elements.times
(0.0, 4.0, 0.2)

>>> population_elements.get_node_ids()
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]

# get the DataFrame of the node_id values for the timesteps between tstart and tstop
>>> data_frame = population_elements.get(node_ids=[13, 14], tstart=0.8, tstop=1.0)

# get the data values (list of list of floats with data[time_index][element_index])
>>> data_frame.data
[[46.0, 46.1, 46.2, 46.3, 46.4, 46.5, 46.6, 46.7, 46.8, 46.9], [56.0, 56.1, 56.2, 56.3, 56.4, 56.5, 56.6, 56.7, 56.8, 56.9]]

# get the list of timesteps
>>> data_frame.times
[0.8, 1.0]

# get the list of (node id, element_id)
>>> data_frame.ids
[(13, 30), (13, 30), (13, 31), (13, 31), (13, 32), (14, 32), (14, 33), (14, 33), (14, 34), (14, 34)]

The same way than with spikes and soma reports, pandas can be used to get a better representation of the data

>>> import pandas

df = pandas.DataFrame(data_frame.data, columns=pandas.MultiIndex.from_tuples(data_frame.ids), index=data_frame.times)
print(df)
       13                            14
       30    30    31    31    32    32    33    33    34    34
0.8  46.0  46.1  46.2  46.3  46.4  46.5  46.6  46.7  46.8  46.9
1.0  56.0  56.1  56.2  56.3  56.4  56.5  56.6  56.7  56.8  56.9

For big datasets, using numpy arrays could greatly improve the performance

>>> import numpy

np_data = numpy.asarray(data_frame.data)
np_ids = numpy.asarray(data_frame.ids).T
np_times = numpy.asarray(data_frame.times)

df = pandas.DataFrame(np_data, columns=pandas.MultiIndex.from_arrays(np_ids), index=np_times)

Acknowledgements

The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government’s ETH Board of the Swiss Federal Institutes of Technology.

This research was supported by the EBRAINS research infrastructure, funded from the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 945539 (Human Brain Project SGA3). This project/research has received funding from the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 785907 (Human Brain Project SGA2).

License

libsonata is distributed under the terms of the GNU Lesser General Public License version 3, unless noted otherwise, for example, for external dependencies. Refer to COPYING.LESSER and COPYING files for details.

libsonata is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License version 3 as published by the Free Software Foundation.

libsonata is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with libsonata. If not, see <https://www.gnu.org/licenses/>.

Copyright (c) 2018-2024 Blue Brain Project/EPFL

Copyright (c) 2025-2026 Open Brain Institute

Project details


Download files

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

Source Distribution

libsonata-0.1.34.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

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

libsonata-0.1.34-cp314-cp314-manylinux_2_28_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

libsonata-0.1.34-cp314-cp314-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

libsonata-0.1.34-cp314-cp314-macosx_10_15_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

libsonata-0.1.34-cp313-cp313-manylinux_2_28_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

libsonata-0.1.34-cp313-cp313-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

libsonata-0.1.34-cp313-cp313-macosx_10_13_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

libsonata-0.1.34-cp312-cp312-manylinux_2_28_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

libsonata-0.1.34-cp312-cp312-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

libsonata-0.1.34-cp312-cp312-macosx_10_13_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

libsonata-0.1.34-cp311-cp311-manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

libsonata-0.1.34-cp311-cp311-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

libsonata-0.1.34-cp311-cp311-macosx_10_9_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

libsonata-0.1.34-cp310-cp310-manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

libsonata-0.1.34-cp310-cp310-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

libsonata-0.1.34-cp310-cp310-macosx_10_9_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file libsonata-0.1.34.tar.gz.

File metadata

  • Download URL: libsonata-0.1.34.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for libsonata-0.1.34.tar.gz
Algorithm Hash digest
SHA256 a9015e42da17d08a473c47cb6104deb06d1280e065af956d00ac95894295c323
MD5 d4d65b007c4d4f32c6806bea95ee5055
BLAKE2b-256 678fb32a05fa124a711bb32d80d596392c361dad967254c4efc043f63d07c7b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34.tar.gz:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cac42634defe7bc36733b15983e6a6f679d40d35c10ee68659abe65b5a58809e
MD5 f2d33f92cd0780b0b22e3b8f1f9dd4fb
BLAKE2b-256 9b96b2d2987134ab678990d3653268b37da2c8c2045244a37a8080773a9b2ee9

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c9a9531b2e9ee579559339fbb87f2d2ea6a222a46c9f39dfc86086e88f4722ac
MD5 d115ae8e2f7bcf4de3084a037377999c
BLAKE2b-256 7dc5e20fd55e4806736e689763f8876d4f307f07daf04d2778854f439c74ef8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 c21f4913454869a4b0961f4222871a2bdc7feb8b88a774bad6c9b4cbf7daf8d2
MD5 5203ecac2c337eeab8a09a4e54ea8fd3
BLAKE2b-256 56e0bce25872b99d131a1b60339e3ef5785b3c15ef958a913c8e1ef0ef78b4ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 48128f6ef0b20a8270018651247ac0b695ae7e9c0cf673801e484a8f4f7edc2d
MD5 d2f75bbabb820a69cf0046fecae10912
BLAKE2b-256 c2c0561b095de2e19598882bd1effa06743e3230fb07323677b5019ba0c534a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 48d28f75d7c681cd36e85ba9ad2105ac72942479adea206ce27be89bbd71b0e3
MD5 f1126426ac728ebc4c538ef181f3b691
BLAKE2b-256 9a1a888b77affa6fe2cd66896fb78efab82978fdd5cfa95372c71847696811cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 04720b9f18d9ab6bf16a7eca8c39b8e49db64901adf64db0977ac906aa5d53b9
MD5 7d21319a8d53dfc855a27dfc95dfce1c
BLAKE2b-256 655a5f08d0c49d0a026b072780a725e6ef803a57db03004bc47dd5b439c826f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 666bb96a0fe04353e5046c3c37a495554cf31388754eb1ce9bce85967ef68e10
MD5 82c821f3dea6e76feda3be35dd3d4a63
BLAKE2b-256 0c066e0f51926e25b35019411906a9ac1449bb6becf8654db9ffdb87609fa401

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f07e64ce2b7310f43541851e287012c11bc9f5caa3865e76b47dba879796274c
MD5 114c58c398fb9506a7bce34c01f3144b
BLAKE2b-256 e79e907f3cfd7d651f76705c5c69b61ee3f3126c8ce108f04d16239a5dd88050

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 70c52fac3e30fbc0f605c75422a339239a95acd3c6fcfd51e87167f6c25761c5
MD5 48d69d295d4e61e863fc4770119ed9a4
BLAKE2b-256 a6f4eca05a0028d2901d2e7bc3f99b1cad90c0c8569ed4ccb825739fbad99c11

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7d72e9b1ae5f7d480f468a023517c77ccf294e3ebaceca64e9bf87be830fdb66
MD5 831484bb42bea61bf51f9fcbfefc26ce
BLAKE2b-256 50c69108fe13b854386dc2726dd66c9cd2b9dd80f8f4254eac2beb51aa1230ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7d907c85b346abaf340945236f37a314b9b901805adee43e7eddfbc3c42956cc
MD5 65626bfae5057b611bc05bf956488621
BLAKE2b-256 82a8bdb61c8e6e432cd9fbe0ec3d8d9c6c5d9ae3c725f46696d405142b0a25e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 06f0648d456a36451ae69916fd6665e27d22908bc610512ee628580428717a91
MD5 29ddf37e38bcb4da6352b11062e21ff8
BLAKE2b-256 edf38009f54218f18dfdeca81f8edcb40f49c9666f7439a0b5e67f4c93a2c0c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 40b6cda905bef9c140e63642e4f81134e6061cc5583c78e77faa080a4f17c123
MD5 58eaf08b780f52d8bd54d56c4aa749c3
BLAKE2b-256 3e9299ac527469a22a19418c5612f9e051b6a56c2b2d55780d7f6eddb474effb

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1f7bdf080a73057c6b63c12ad2edb832083ce1dab40b4a179ccb25dbb759c54d
MD5 417f609af0b9594273382b26b1d6423b
BLAKE2b-256 50092b2d643476667febd0967b50cb29350ef6d2661190c6db4fc5934fa9577f

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

File details

Details for the file libsonata-0.1.34-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libsonata-0.1.34-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8ae0d9a538734a1c4498167254627e45a1d3b62f9574cc3e2d8d9b50c621711a
MD5 9fb7b857df415c28dc58cea1a3ab759b
BLAKE2b-256 7b947e008c393a5ff68b369bc53b877a7bf9eb4eb42a15387aea14cd5678c6a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for libsonata-0.1.34-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish-sdist-wheels.yml on openbraininstitute/libsonata

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page