Skip to main content

A modern C++ header only cdf library

Project description

License: GPL v3 Documentation Status CPP17 PyPi Coverage Discover on MyBinder

Python packages

Linux x86_64 Windows x86_64 MacOs x86_64 MacOs ARM64
linux_x86_64 windows_x86_64 macos_x86_64 macos_arm64

Unit Tests

Linux x86_64 Windows x86_64 MacOs x86_64
linux_x86_64 windows_x86_64 macos_x86_64

CDFpp (CDF++)

A NASA's CDF modern C++ library. This is not a C++ wrapper but a full C++ implementation. Why? CDF files are still used for space physics missions but few implementations are available. The main one is NASA's C implementation available here but it lacks multi-threads support (global shared state), has an old C interface and has a license which isn't compatible with most Linux distributions policy. There are also Java and Python implementations which are not usable in C++.

List of features and roadmap:

  • CDF reading
    • read files from cdf version 2.2 to 3.x
    • read uncompressed file headers
    • read uncompressed attributes
    • read uncompressed variables
    • read variable attributes
    • loads cdf files from memory (std::vector or char*)
    • handles both row and column major files
    • read variables with nested VXRs
    • read compressed files (GZip, RLE)
    • read compressed variables (GZip, RLE)
    • read UTF-8 encoded files
    • read ISO 8859-1(Latin-1) encoded files (converts to UTF-8 on the fly)
    • variables values lazy loading
    • decode DEC's floating point encoding (Itanium, ALPHA and VAX)
    • pad values
  • CDF writing
    • write uncompressed headers
    • write uncompressed attributes
    • write uncompressed variables
    • write compressed variables
    • write compressed files
    • pad values
  • General features
    • uses libdeflate for faster GZip decompression
    • highly optimized CDF reads (up to ~4GB/s read speed from disk)
    • handle leap seconds
    • Python wrappers
    • Documentation
    • Examples (see below)
    • Benchmarks

If you want to understand how it works, how to use the code or what works, you may have to read tests.

Installing

From PyPi

python3 -m pip install --user pycdfpp

From sources

meson build
cd build
ninja
sudo ninja install

Or if youl want to build a Python wheel:

python -m build . 
# resulting wheel will be located into dist folder

Basic usage

Python

Reading CDF files

Basic example from a local file:

import pycdfpp
cdf = pycdfpp.load("some_cdf.cdf")
cdf_var_data = cdf["var_name"].values #builds a numpy view or a list of strings
attribute_name_first_value = cdf.attributes['attribute_name'][0]

Note that you can also load in memory files:

import pycdfpp
import requests
import matplotlib.pyplot as plt
tha_l2_fgm = pycdfpp.load(requests.get("https://spdf.gsfc.nasa.gov/pub/data/themis/tha/l2/fgm/2016/tha_l2_fgm_20160101_v01.cdf").content)
plt.plot(tha_l2_fgm["tha_fgl_gsm"])
plt.show()

Buffer protocol support:

import pycdfpp
import requests
import xarray as xr
import matplotlib.pyplot as plt

tha_l2_fgm = pycdfpp.load(requests.get("https://spdf.gsfc.nasa.gov/pub/data/themis/tha/l2/fgm/2016/tha_l2_fgm_20160101_v01.cdf").content)
xr.DataArray(tha_l2_fgm['tha_fgl_gsm'], dims=['time', 'components'], coords={'time':tha_l2_fgm['tha_fgl_time'].values, 'components':['x', 'y', 'z']}).plot.line(x='time')
plt.show()

# Works with matplotlib directly too

plt.plot(tha_l2_fgm['tha_fgl_time'], tha_l2_fgm['tha_fgl_gsm'])
plt.show()

Datetimes handling:

import pycdfpp
import os
# Due to an issue with pybind11 you have to force your timezone to UTC for 
# datetime conversion (not necessary for numpy datetime64)
os.environ['TZ']='UTC'

mms2_fgm_srvy = pycdfpp.load("mms2_fgm_srvy_l2_20200201_v5.230.0.cdf")

# to convert any CDF variable holding any time type to python datetime:
epoch_dt = pycdfpp.to_datetime(mms2_fgm_srvy["Epoch"])

# same with numpy datetime64:
epoch_dt64 = pycdfpp.to_datetime64(mms2_fgm_srvy["Epoch"])

# note that using datetime64 is ~100x faster than datetime (~2ns/element on an average laptop)

Writing CDF files

Creating a basic CDF file:

import pycdfpp
import numpy as np
from datetime import datetime

cdf = pycdfpp.CDF()
cdf.add_attribute("some attribute", [[1,2,3], [datetime(2018,1,1), datetime(2018,1,2)], "hello\nworld"])
cdf.add_variable(f"some variable", values=np.ones((10),dtype=np.float64))
pycdfpp.save(cdf, "some_cdf.cdf")

C++

#include "cdf-io/cdf-io.hpp"
#include <iostream>

std::ostream& operator<<(std::ostream& os, const cdf::Variable::shape_t& shape)
{
    os << "(";
    for (auto i = 0; i < static_cast<int>(std::size(shape)) - 1; i++)
        os << shape[i] << ',';
    if (std::size(shape) >= 1)
        os << shape[std::size(shape) - 1];
    os << ")";
    return os;
}

int main(int argc, char** argv)
{
    auto path = std::string(DATA_PATH) + "/a_cdf.cdf";
    // cdf::io::load returns a optional<CDF>
    if (const auto my_cdf = cdf::io::load(path); my_cdf)
    {
        std::cout << "Attribute list:" << std::endl;
        for (const auto& [name, attribute] : my_cdf->attributes)
        {
            std::cout << "\t" << name << std::endl;
        }
        std::cout << "Variable list:" << std::endl;
        for (const auto& [name, variable] : my_cdf->variables)
        {
            std::cout << "\t" << name << " shape:" << variable.shape() << std::endl;
        }
        return 0;
    }
    return -1;
}

caveats

  • NRV variables shape, in order to expose a consistent shape, PyCDFpp exposes the reccord count as first dimension and thus its value will be either 0 or 1 (0 mean empty variable).

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

pycdfpp-0.7.3.tar.gz (1.7 MB view details)

Uploaded Source

Built Distributions

pycdfpp-0.7.3-pp310-pypy310_pp73-win_amd64.whl (398.8 kB view details)

Uploaded PyPy Windows x86-64

pycdfpp-0.7.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (858.3 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl (664.0 kB view details)

Uploaded PyPy macOS 11.0+ ARM64

pycdfpp-0.7.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (717.7 kB view details)

Uploaded PyPy macOS 10.15+ x86-64

pycdfpp-0.7.3-pp39-pypy39_pp73-win_amd64.whl (398.9 kB view details)

Uploaded PyPy Windows x86-64

pycdfpp-0.7.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (857.3 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl (664.0 kB view details)

Uploaded PyPy macOS 11.0+ ARM64

pycdfpp-0.7.3-pp39-pypy39_pp73-macosx_10_15_x86_64.whl (717.7 kB view details)

Uploaded PyPy macOS 10.15+ x86-64

pycdfpp-0.7.3-pp38-pypy38_pp73-win_amd64.whl (398.8 kB view details)

Uploaded PyPy Windows x86-64

pycdfpp-0.7.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (857.0 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-pp38-pypy38_pp73-macosx_11_0_arm64.whl (664.0 kB view details)

Uploaded PyPy macOS 11.0+ ARM64

pycdfpp-0.7.3-pp38-pypy38_pp73-macosx_10_15_x86_64.whl (717.8 kB view details)

Uploaded PyPy macOS 10.15+ x86-64

pycdfpp-0.7.3-cp313-cp313-win_amd64.whl (402.1 kB view details)

Uploaded CPython 3.13 Windows x86-64

pycdfpp-0.7.3-cp313-cp313-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13 musllinux: musl 1.2+ x86-64

pycdfpp-0.7.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (854.9 kB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-cp313-cp313-macosx_11_0_arm64.whl (668.3 kB view details)

Uploaded CPython 3.13 macOS 11.0+ ARM64

pycdfpp-0.7.3-cp313-cp313-macosx_10_15_x86_64.whl (723.1 kB view details)

Uploaded CPython 3.13 macOS 10.15+ x86-64

pycdfpp-0.7.3-cp312-cp312-win_amd64.whl (402.2 kB view details)

Uploaded CPython 3.12 Windows x86-64

pycdfpp-0.7.3-cp312-cp312-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.2+ x86-64

pycdfpp-0.7.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (854.7 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-cp312-cp312-macosx_11_0_arm64.whl (668.3 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

pycdfpp-0.7.3-cp312-cp312-macosx_10_15_x86_64.whl (723.0 kB view details)

Uploaded CPython 3.12 macOS 10.15+ x86-64

pycdfpp-0.7.3-cp311-cp311-win_amd64.whl (400.9 kB view details)

Uploaded CPython 3.11 Windows x86-64

pycdfpp-0.7.3-cp311-cp311-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

pycdfpp-0.7.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (857.2 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-cp311-cp311-macosx_11_0_arm64.whl (665.6 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

pycdfpp-0.7.3-cp311-cp311-macosx_10_15_x86_64.whl (719.0 kB view details)

Uploaded CPython 3.11 macOS 10.15+ x86-64

pycdfpp-0.7.3-cp310-cp310-win_amd64.whl (399.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

pycdfpp-0.7.3-cp310-cp310-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

pycdfpp-0.7.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (856.1 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-cp310-cp310-macosx_11_0_arm64.whl (664.5 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

pycdfpp-0.7.3-cp310-cp310-macosx_10_15_x86_64.whl (718.3 kB view details)

Uploaded CPython 3.10 macOS 10.15+ x86-64

pycdfpp-0.7.3-cp39-cp39-win_amd64.whl (391.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

pycdfpp-0.7.3-cp39-cp39-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.2+ x86-64

pycdfpp-0.7.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (855.4 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-cp39-cp39-macosx_11_0_arm64.whl (664.7 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

pycdfpp-0.7.3-cp39-cp39-macosx_10_15_x86_64.whl (718.3 kB view details)

Uploaded CPython 3.9 macOS 10.15+ x86-64

pycdfpp-0.7.3-cp38-cp38-win_amd64.whl (399.7 kB view details)

Uploaded CPython 3.8 Windows x86-64

pycdfpp-0.7.3-cp38-cp38-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.2+ x86-64

pycdfpp-0.7.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (892.9 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pycdfpp-0.7.3-cp38-cp38-macosx_11_0_arm64.whl (673.5 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

pycdfpp-0.7.3-cp38-cp38-macosx_10_15_x86_64.whl (748.8 kB view details)

Uploaded CPython 3.8 macOS 10.15+ x86-64

File details

Details for the file pycdfpp-0.7.3.tar.gz.

File metadata

  • Download URL: pycdfpp-0.7.3.tar.gz
  • Upload date:
  • Size: 1.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pycdfpp-0.7.3.tar.gz
Algorithm Hash digest
SHA256 20dfa537db4c3f156f402bec81e272c04600d69510839205411434e932efd469
MD5 592c5af7c202bcdd9c128d17037741ce
BLAKE2b-256 0a5c51bcf7b042c288ad55c3eedd13e969e09ec3e8daa461eea82945edb00f30

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 91ba31e38fde167dce157f7ce8171508e0600d74b3fc4646d0d912a79a2273e7
MD5 a050bf6cf4fc6b74d0e61f37f7510e46
BLAKE2b-256 0b3eac46ecef806bab1a734596db9e0e1c16f3973a6522871d592ec41919fb7d

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7b414c8407b6e61155bde4df3cf3ec874487816f5d95c07234e2024b7f38dbe3
MD5 6c74a9836efc21a17ef2af6b9ec2f88a
BLAKE2b-256 5f9170c4310f3d35ddb8713a798dffe0e4a670975e208f3ef04705b600ff0c42

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 007d6939fe6ec6f31e1fc135bee7aaced0cb0c50447eaddf678d8d6adbe70d78
MD5 ead32a9b6d5fddcdaf0e8ff8a70272d7
BLAKE2b-256 25e4b6a04c2596d55c01aa5db6af0042fde2dbf90a1099715631f80572369446

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 530728ddeed0894e494afb17fa76e431d4f518471cf1dde215d9dc9aa825f956
MD5 85484f90e5f941e9411621b1b3679d76
BLAKE2b-256 26356985f43689065c631ac161501c6df70466d91da55d95a6692ef7cfb47f53

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 821e31a9862dcfb597337e07f5b0ac89ee7fb628dd1aaa9bc6ca174a1c2ba25b
MD5 b7feae143fa7f8fd802c77bfea181d41
BLAKE2b-256 651bd2e3ade877b394033bcb67984bd5ade7bd007322a2a5fad88b4f4d4c6ea0

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 664b5de96672348afa2a31e6ebbb02fc2e83446557356802847be303f73388be
MD5 4c28ea726abe0996e58866f66340a17c
BLAKE2b-256 522daa759db8ad062f89fc8a09bcf2598ac98f06b5f7877b78f878e81f3e6b68

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 444ea765cbeaf222c025f1cad8dd2a1fb8f4ec8d7c976f616c3f1fd71ec68fd8
MD5 8f0ac23bd71277e92e9a34277eb2a521
BLAKE2b-256 916439a712c94d8b89d3ef544660e86712ffa328ab113e8076f08010e4bfbbd7

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp39-pypy39_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp39-pypy39_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 6ad26a784ab682b48d313f46e4a6150fa8d26dab78d04dce3114cfa38a7f6082
MD5 6a1150742fba96e9952684ae9b7d491a
BLAKE2b-256 8f64832022c0556944c4eaf55649d20f54f2af8926af27820b7cd64027c03e8a

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp38-pypy38_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 49ff1bdb5689c5b178eb9f19b060f5ab67f67cc0128a5050c719a7f038ab1b39
MD5 6cb4e9e8d4c8279e2cc9486a8f7a972d
BLAKE2b-256 7c43f50bc38c5d8e25d3d43051e7ba8f192d0bdb05d741b4245248820978ba9a

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3ec2fcbcff0cdbcd5b489290eaca3430825386bbbf6b08493767f32ad73d3f71
MD5 ffae169d74eaaf045e13518143122448
BLAKE2b-256 3c69aed35b64df6b127f475d5874eca1d5fe101f4d6b0a48cdfcdce4b9906919

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp38-pypy38_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp38-pypy38_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 074da59c12f231f866de0668730031e0dfffaea49bc3e5f03cfae58d04085ae1
MD5 c8cbfdc4d48ea042f9b4a2713641d375
BLAKE2b-256 a0dfabce4eeaf199f07e64611babb72bde684c3e1b4f98bf19d8f80086eca6e9

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-pp38-pypy38_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-pp38-pypy38_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 97d5754a6a7f65683a6d27575ae2ed132ffb80cdc4e2ab9315a1030f4fa24f8e
MD5 73c9eec504d5b9cc58a1110cd18c8c0a
BLAKE2b-256 bf427841c5c0fbf60e09eeafc88cc5ed9a00878a10aef1343f743fc975d07d92

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pycdfpp-0.7.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 402.1 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pycdfpp-0.7.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 cea844c337d145a2143be1c09ab2313d9fca37350579dd5c7edbc0ce83b7e826
MD5 01f33253f04cf7b119de5e0752a54841
BLAKE2b-256 0b4961edcfd718a0462d66bf008d32847c8b5948644cf9827e656fb6f9829c61

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 35edef87417731e0a44ced2fd13bc852930de5063e03b2a8477fe8738fa0a630
MD5 8cac0ecb516f9ebb0967f471f761916b
BLAKE2b-256 28b3b5537aba7cfc4eb1bf3801b1e1dce42c046c45d35eadde80cda22cd78537

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 092c7b7fcf41d424dee0b4b968a4572cdbab1c19682e13ac5e6170f354021a52
MD5 2d1e04e32ec435a70399546c876c22d2
BLAKE2b-256 1274f4802b96dc9f39cdcd61528f9b8e7258a0a238f55aea40a776ad29d7bd4d

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d901ad7a24b171a66d33fb85e58c9283fb1553a05af7636375757f9b5bde2f40
MD5 bc3df30b95948f71fd7b816bb6b8eebe
BLAKE2b-256 81356561d8607bf057a9cceda03cdbf99122aa1b0062a05babf54ebe6c67b23d

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp313-cp313-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp313-cp313-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 54a3fa91837ad49c1bf0e4a9f51b6d3f68a35966befd818a9922d58b3b0eed9a
MD5 e4ecf36e02a3343e8335e5acaf780553
BLAKE2b-256 9e82400bf0ad943b90662095deda1243cd24aa29e5157030f8c8463728cb930b

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pycdfpp-0.7.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 402.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pycdfpp-0.7.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 dd5180ddab166f36d9a2317aeef7608617548696a2f8f6ec4d8f8ae86c601ef3
MD5 c71e7c1c03eff00a939482128341e4d1
BLAKE2b-256 fa0c7cd4d6927324eee02122dc69773988a0ce3c52a7df45d3290ca1fab0960a

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2a9ef87d14abbbb9826572102ba3a5f0e500f24329d36e5da4afc131d36c4309
MD5 a5dc76094c060ef80ddf1d07a3b26160
BLAKE2b-256 607c43c434a82b831538ffe4572a39a1846a639f5ac9aec3babe0b0883537682

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aa7475b2414a7e04d0e84d61f5512f5532fe1cbe1171565e92a80f9a564297d6
MD5 1d507539968046466627331dd7a0a1cb
BLAKE2b-256 13f7e8dfa87c24642084d362250729be530412fe6d1c05da3f601bd6580c7a92

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f3fbfe9210cf92b57837b8b2f386b091a8c0422e610974630b66cd0a4c07450f
MD5 558c230d62ce57150e82baf1579e6116
BLAKE2b-256 f23343b7f5b8d958349e5a33e1c23bf39efeb09cff234c19bde457993079e56d

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp312-cp312-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 e317565783fc48fc4cc4a81726f30b6bbaa2b1b401439ac1e613270e1963a1cc
MD5 0de8ccd6373ff4274ba82567b73530f6
BLAKE2b-256 fb22a08ba00ffbc91212ec82071af052159f174cb88fda2a636c3eb121bbd685

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pycdfpp-0.7.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 400.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pycdfpp-0.7.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 03018c74015c2781eb117b964edb0c4a42a252ceb276fc278a1d0acf696b6549
MD5 79d27240e207988d6f7660840912bd7f
BLAKE2b-256 9571a5e5b291b939dd7170a0ca20f6c0e1f8a865d9f69454a5f2019f5ba0e266

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2c0c7ef881581e8adc92b0607ce046d1c02f285af02ea6a3f0ebec1298b02809
MD5 87408b6c0337be3605b05cfd20e4f708
BLAKE2b-256 fd65bc43677d10b5492d3c40ca299269d0015bf357b7afdc9bf42d78f9ee51e1

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e733bc50d369ec081d5d1001f7b49fb4e98792dae74ec7cd2750f69babaf07c
MD5 90a54d6d232a8b710ab1afafaa14902a
BLAKE2b-256 4b485053bef4d761dada83eeddaec19f70adac822bffbcf29deb2dcb52fcdd4f

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 55508fc1e151bde12f33f97b45a4d08f505984e702f87befe8ab59300fa656c5
MD5 dc5ce4d32a39e62f955d7b28c0adfd1f
BLAKE2b-256 fcfbd45c5c278ca8c4a76092afacd4c7c9d656c4a01a7920687b2ff43f1f7237

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp311-cp311-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 ea16f8b3df9fa97e289d7a80c2422ac967afa00541322f9d269195dec9a165fe
MD5 c085d02c0af0a62861c2c02c0b711e24
BLAKE2b-256 c727c51eaf37d35930c445eae13d11858ca030ac7d8625d7622b29875f887b7b

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pycdfpp-0.7.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 399.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pycdfpp-0.7.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 cfa3ae8465041f67ce595064b429f9b1797b85fdce1d22af956bb73af029ff04
MD5 585888e8a8820861ee1a1ef2b820b398
BLAKE2b-256 92cb73558f27de93eea8376632bfc03e5d4a61ef16a0f3d0560a61896de3092a

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e5909743c7cdea4b81e88c21323809c02fb0221655ba907e5205773ce3325d7f
MD5 ab342de5097aafbd86cd8470017ba704
BLAKE2b-256 4e9280d5a24d6f57f1f4f1e939735f10fc203a4bc6f5920e8333bd3262e8748f

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0113612bb28620748904674fb538d28866870ef37146012ca46543b2c5b3478c
MD5 2e56819033f8f54d481bfc46160a9ff0
BLAKE2b-256 c46904d9e0c4b6172c026d6044857cbaff84e7712d22ec982cfc089dc2e49f4d

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bcaf876128c8b90a1dfef8ff73d2e8caffe9f1ecbf37421972f28fc0807aa6b6
MD5 19893261fae4c099f61189e994893ec3
BLAKE2b-256 b360eb4f32fb8bbb5d02c2fa9129e88f36d7f1b8dee3593c4d9b1078b5f709b6

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp310-cp310-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 efc2cd5209cafbf74a40efe2da73dbab53ff44732f94e9ef77217bb31c26cc14
MD5 0f25b9b0f09a6bacf2a0356c7e613694
BLAKE2b-256 64a4a58672bc311795caa458aee72a398be2c333476f0d3e60d0b6e10b219b87

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pycdfpp-0.7.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 391.6 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pycdfpp-0.7.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3340033c667284849c8266a1c4e36e9d90eec0ad0d1f5de3fedb5ffcfb36790f
MD5 281657bf8757e5a05c6f4c4fb84f4a8f
BLAKE2b-256 7a26777959b5f5caa9edf2927e676990fe3404aebb614f43fb6c9d7799459c84

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cb164c722d81c24c764f22c996be7304a23faffb99e7c2a7d730898b26026c50
MD5 8735cafae4fbba55ce604e3f0f54360d
BLAKE2b-256 b5de6252e3ecd50d20b524422225f689c8bea5f9e95588771062038aa0469d27

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4a6edea68df4df4bfcb81811182bacc9cd085fb31f262c434fbeeb973b05fbc1
MD5 d7dc55e76667ae3cb9502b85fb8e89ae
BLAKE2b-256 16b714950becd2691850cbae9a04a0aba94af5f689df8ed0dddb37bf20c5119f

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9b58d9696fa3199d464770f24044cd1106c059c1f48eaedeaeead1544c645bd2
MD5 6830731cac720442cafa7aa0379caf8a
BLAKE2b-256 90efac9a0009c1ffcfe6556d05b64ed210872f7b6c3b588d633b46d2fd6590bf

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 f0f8c848845a16707c481af87d5455f449483aa5190da9f87cc53afa61ff2791
MD5 62504fa2f0a68f4cce09bd1312571543
BLAKE2b-256 a737cdd4a1ad21b82b8445bd0daee396e0b49d82b5eb14f4df598b0777f6b3b7

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pycdfpp-0.7.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 399.7 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pycdfpp-0.7.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 71aef27afb5d5c19e25efe2272962945a5e3d51d9d8370498e9340718e1efa6b
MD5 06885f094da022596f07d677d8d6714a
BLAKE2b-256 e628fa980a2f463a0da0f832d25c44a519ec4f40d5e963dcf9bb26f83657f8d5

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ba590978284087a5eca58acb2a4c7141a3aee62620fe8acd284b52ced7eaed3f
MD5 bed1498c85c95457e83f849a39359436
BLAKE2b-256 c13a7b67ff5af7eb1d4913513498523808b79d2ed0a1afcf488bc398014272c3

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e0c3b54b9681eb5f353cd30f80b2e2927cca9b889f25ada676a747d0c7af1e1f
MD5 37c34f51d182693b166d9fbd9d392a3e
BLAKE2b-256 c718acebe1c208eaf2256e2e5a9f9e3948a7c5d6aa8607c596d20e5c73c0b064

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35ad90a8111c9b15059c5c17007585d602680ddba22e7d322de797f2c39c61cb
MD5 9063109857b7e1559313576a091d0528
BLAKE2b-256 d9e4035fac31fffb7449c40098aa43c5fcb3e4d61113cf11915e5781cc5f3c20

See more details on using hashes here.

File details

Details for the file pycdfpp-0.7.3-cp38-cp38-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for pycdfpp-0.7.3-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 ed688bba28bd28b34ad641888d59803cc842414553c4d4c240c80f068a50ae6c
MD5 d85f83a58ef074856893259c131e8354
BLAKE2b-256 1dae070cde9cc219e81b0a978632a465a75e866e15e97ee1d98f8a810db48e6c

See more details on using hashes here.

Supported by

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