Skip to main content
pyheclib

pyheclib

Python: Version Action: Test License: MIT Docs

Documentation: nzahasan.github.io/pyheclib

Read and write HEC-DSS files from Python.

HEC-DSS is the database format used by HEC-HMS, HEC-RAS and other tools from the US Army Corps of Engineers' Hydrologic Engineering Center. pyheclib works with DSS version 7 files. It bundles the official HEC-DSS C library for Linux (x86_64), macOS (Apple Silicon, macOS 14+) and Windows (x64).

DSS version 6 files are not supported. Convert them to version 7 with HEC-DSSVue first.

Install

pip install pyheclib

Requires Python 3.8 or newer. Depends on numpy and pandas.

Quick start

Every record is a Python object that holds its pathname, data and metadata. Create a record, write it to a file, and read gives you the same kind of object back.

Record Use it for Data Convert
RegularTs fixed-interval time series values (numpy), start time to_series() / RegularTs.from_series() (pandas)
IrregularTs time series with any timing times, values (numpy) to_series() / IrregularTs.from_series() (pandas)
PairedData curves, e.g. rating tables x (numpy 1d), y (numpy 2d [curves, points]) to_dataframe() / PairedData.from_dataframe()
GriddedData rasters, e.g. radar or DEM data (numpy 2d float32, north-up, NaN = no data) it's already a numpy array

Open a file

import numpy as np
import pandas as pd
import pyheclib as phl

dss_file = phl.open("example.dss")     # opens the file, or creates it

You can also use it as a context manager: with phl.open("example.dss") as dss_file: ...

Regular time series

The interval comes from the E part of the pathname, e.g. 1HOUR, 15MINUTE, 1DAY, 1MONTH. Missing values are NaN.

# from a list of values and the time of the first value
precip = phl.RegularTs("/DEMO/GAGE/PRECIP//1DAY/OBS/", values=[0.0, 12.5, 48.0, 3.1, 0.0],
                       start="2020-01-14", unit="MM", type="PER-CUM")
dss_file.write(precip)

# from a pandas Series
hours = pd.date_range("2020-01-14 01:00", periods=96, freq="h")
flow = pd.Series(40 + 50*np.exp(-((np.arange(96) - 40) / 12.0)**2), index=hours)
flow.iloc[70:76] = np.nan
dss_file.write(phl.RegularTs.from_series("/DEMO/OUTLET/FLOW//1HOUR/OBS/", flow, unit="CFS", type="INST-VAL"))

# read the whole series (leave the D part empty)
rts = dss_file.read("/DEMO/OUTLET/FLOW//1HOUR/OBS/")          # -> RegularTs
print(rts.unit, rts.type, rts.interval, rts.start)            # CFS INST-VAL 1HOUR 2020-01-14 01:00:00
series = rts.to_series()                                      # pandas Series indexed by time

# or just a time window
window = dss_file.read("/DEMO/OUTLET/FLOW//1HOUR/OBS/", start="2020-01-15 12:00", end="2020-01-15 18:00")

Regular time series

Irregular time series

Use an E part that starts with IR- (or ~), e.g. IR-MONTH. Times are stored to the second. Writing replaces any stored values inside the time span of the new record.

stage = phl.IrregularTs("/DEMO/OUTLET/STAGE//IR-MONTH/OBS/",
                        times=pd.to_datetime(["2020-01-14 08:13:00", "2020-01-15 07:30:15", "2020-01-16 16:45:00"]),
                        values=[3.1, 4.6, 3.4], unit="FT", type="INST-VAL")
dss_file.write(stage)

its = dss_file.read("/DEMO/OUTLET/STAGE//IR-MONTH/OBS/")      # -> IrregularTs
its.times, its.values, its.to_series()

Irregular time series

Paired data

All curves share one x array. y has one row per curve. labels (optional) names the curves.

h = np.linspace(0, 12, 49)
rating = phl.PairedData("/DEMO/OUTLET/STAGE-FLOW///RATING/", x=h,
                        y=np.vstack([5.2*h**1.80, 5.6*h**1.75, 6.1*h**1.70]),
                        x_unit="FT", y_unit="CFS", labels=["2018", "2019", "2020"])
dss_file.write(rating)

pd_rec = dss_file.read("/DEMO/OUTLET/STAGE-FLOW///RATING/")   # -> PairedData
pd_rec.n_curves, pd_rec.labels
df = pd_rec.to_dataframe()                                    # index: x, one column per curve

Paired data

Gridded data

data is a 2d numpy array, stored as float32:

  • the first row is the northern-most row (north-up)
  • NaN means no data
  • xll, yll is the lower-left corner of the grid, in the grid's coordinate system
  • the D and E parts are the start and end time; leave both empty for grids that don't change over time (e.g. a DEM)
yy, xx = np.mgrid[0:90, 0:140]
field = (38*np.exp(-(((xx - 85)/22.0)**2 + ((yy - 40)/14.0)**2))).astype(np.float32)
field[((xx - 70)/68.0)**2 + ((yy - 45)/44.0)**2 > 1] = np.nan       # outside the basin

grid = phl.GriddedData("/SHG/DEMO/PRECIP/15JAN2020:0000/15JAN2020:0600/RADAR/", field,
                       cell_size=2000.0, xll=-180000.0, yll=1320000.0, unit="MM", type="PER-CUM",
                       grid_type="ALBERS", srs_name="SHG", time_zone="UTC")
dss_file.write(grid)

g = dss_file.read("/SHG/DEMO/PRECIP/15JAN2020:0000/15JAN2020:0600/RADAR/")   # -> GriddedData
g.data.shape, g.cell_size, g.extent, g.lower_left_cell, g.start_time

Gridded data

Pathnames and the catalog

A DSS pathname has six parts: /A/B/C/D/E/F/. DssPath lets you work with the parts. Anywhere a pathname is expected, you can pass a DssPath or a plain string.

path = phl.DssPath("/DEMO/OUTLET/FLOW/01JAN2020/1HOUR/OBS/")
path.C                        # 'FLOW'
path.replace(F="SIM")         # DssPath('/DEMO/OUTLET/FLOW/01JAN2020/1HOUR/SIM/')
path.without_date()           # DssPath('/DEMO/OUTLET/FLOW//1HOUR/OBS/')
phl.DssPath.from_parts(A="DEMO", C="STAGE-FLOW", F="RATING")

dss_file.catalog()                      # every record (a long time series is split into blocks)
dss_file.catalog(condensed=True)        # one path per time series, D part = date range,
                                        # e.g. 01JAN2020-01MAR2020
dss_file.catalog("/DEMO/*/FLOW/*/*/*/", condensed=True, with_types=True)
dss_file.read(dss_file.catalog(condensed=True)[0])   # a condensed path reads the whole series

Find and delete

Use * at the start or end of any pathname part as a wildcard. delete returns the paths it removed.

dss_file.find("/DEMO/*/*/*/*/OBS/")                    # every OBS record in DEMO
dss_file.find("/*/*/STAGE*/*/*/*/")                    # STAGE and STAGE-FLOW records

dss_file.delete("/DEMO/OUTLET/STAGE-FLOW///RATING/")   # one record
dss_file.delete("/DEMO/OUTLET/FLOW//1HOUR/OBS/")       # a whole time series (all blocks)
dss_file.delete("/SHG/*/*/*/*/*/")                     # everything with A part SHG
dss_file.close()

Limitations

  • Quality flags are read when present, but not written.
  • Gridded data is always stored as float32.
  • Only DSS version 7 files.

Quick reference

A compact summary of the API, useful for scripts and AI coding agents.

import pyheclib as phl

phl.open(filename) -> DssFile                 # creates the file if missing; context manager
DssFile.write(record)                         # replaces existing data at that path
DssFile.read(path, start=None, end=None)      # -> RegularTs | IrregularTs | PairedData | GriddedData
DssFile.catalog(path_filter="", condensed=False, with_types=False) -> list[DssPath]
DssFile.find(path) -> list[DssPath]           # '*' wildcard at start/end of a part
DssFile.delete(path) -> list[DssPath]         # raises KeyError if nothing matches
DssFile.record_type(path) -> int              # 105 regular ts, 115 irregular ts, 205 paired, 4xx grid
DssFile.close()

RegularTs(path, values, start, unit="", type="INST-VAL", time_zone="")
    .interval  .times  .to_series()  RegularTs.from_series(path, series, unit, type)
IrregularTs(path, times, values, unit="", type="INST-VAL", time_zone="")
    .to_series()  IrregularTs.from_series(path, series, unit, type)
PairedData(path, x, y, x_unit="", y_unit="", labels=[])
    .n_curves  .to_dataframe()  PairedData.from_dataframe(path, df, x_unit, y_unit)
GriddedData(path, data, cell_size, xll, yll, unit="", type="INST-VAL",
            grid_type="SPECIFIED", srs_wkt="", srs_name="", origin=(0, 0), time_zone="")
    .shape  .extent  .lower_left_cell  .start_time  .end_time

DssPath(path) | DssPath.from_parts(A=, B=, C=, D=, E=, F=)
    .A .. .F  .parts()  .replace(**parts)  .without_date()

Rules worth knowing:

  • type is one of INST-VAL, INST-CUM, PER-AVER, PER-CUM, FREQ.
  • grid_type is one of UNDEFINED, HRAP, ALBERS, SPECIFIED.
  • Regular time series: the E part sets the interval. Irregular: E part starts with IR- or ~.
  • Leave the D part empty to read a whole time series; use start / end for a window.
  • Missing values are NaN for all record types.
  • HEC-DSS log output is set by the DSS_MESSAGE_LEVEL environment variable (0 = none to 15 = debug); default and fallback is 1 (critical only).
  • Gridded xll, yll must line up with origin in whole multiples of cell_size.

Tools

Installing pyheclib adds these commands (on Linux, macOS and Windows):

dss_browser file.dss [--port 8765] [--no-browser]   # browse a file in your web browser
dss_catalog file.dss [filter] [--condensed]         # list records
dssrec2csv file.dss pathname out.csv                # export one record to csv

They are also available as python -m pyheclib.tools.<name>.

The browser opens one or more files in tabs (or drag files onto the page). Search records by text or by part (B=GAGE C=FLOW*), view metadata, statistics, a graph or table of the data, and download a record as csv. Each record has its own link (/?file=1&path=/A/B/C/D/E/F/).

dss browser, light mode dss browser, dark mode

Examples and notebooks

Development

git clone https://github.com/nzahasan/pyheclib && cd pyheclib
pip install -r requirements.txt
python3 setup.py build_ext --inplace    # rebuild after editing src/*.pyx or src/*.pxd
pytest                                  # also runs the code in this README

Code layout:

  • pyheclib/records.py: record classes
  • pyheclib/dsspath.py: DssPath
  • pyheclib/dssfile.py: open and DssFile
  • src/_core.pyx: thin Cython wrapper around the HEC-DSS C API

Bundled HEC-DSS library

pyheclib bundles the official HEC-DSS C API library (hecdss) version 7-JA-7, built by the Hydrologic Engineering Center (source code). The binaries come unchanged from HEC's Maven repository, mil/army/usace/hec/hecdss/7-JA-7-<platform>:

File Platform Package
heclib/macos/libhecdss.dylib macOS, universal (arm64 + x86_64) 7-JA-7-darwin-aarch64, 7-JA-7-darwin-x86_64
heclib/linux/libhecdss.so Linux x86_64 7-JA-7-linux-x86_64
heclib/windows/hecdss.dll Windows x64 7-JA-7-win-x86_64

heclib/include/hecdss.h is the matching header. heclib/windows/hecdss.def is generated from the dll's export table. The details are also in heclib/version.txt.

phl.__hecdss_version__   # '7-JA-7', the bundled library release
phl.api_version()        # version reported by the hecdss C API

Resources

Metadata

Release files for pyheclib 0.4.2

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

Source distribution (sdist)

Source distribution for pyheclib 0.4.2
File Size Uploaded Provenance Actions
pyheclib-0.4.2.tar.gz 1.6 MB With provenance Details for pyheclib-0.4.2.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for pyheclib 0.4.2
File Actions
pyheclib-0.4.2-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for pyheclib-0.4.2-cp314-cp314-win_amd64.whl
pyheclib-0.4.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details for pyheclib-0.4.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
pyheclib-0.4.2-cp314-cp314-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 macOS 14.0+ ARM64 Details for pyheclib-0.4.2-cp314-cp314-macosx_14_0_arm64.whl
pyheclib-0.4.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for pyheclib-0.4.2-cp313-cp313-win_amd64.whl
pyheclib-0.4.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details for pyheclib-0.4.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
pyheclib-0.4.2-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details for pyheclib-0.4.2-cp313-cp313-macosx_14_0_arm64.whl
pyheclib-0.4.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for pyheclib-0.4.2-cp312-cp312-win_amd64.whl
pyheclib-0.4.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for pyheclib-0.4.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
pyheclib-0.4.2-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details for pyheclib-0.4.2-cp312-cp312-macosx_14_0_arm64.whl
pyheclib-0.4.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for pyheclib-0.4.2-cp311-cp311-win_amd64.whl
pyheclib-0.4.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details for pyheclib-0.4.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
pyheclib-0.4.2-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details for pyheclib-0.4.2-cp311-cp311-macosx_14_0_arm64.whl
pyheclib-0.4.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for pyheclib-0.4.2-cp310-cp310-win_amd64.whl
pyheclib-0.4.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details for pyheclib-0.4.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
pyheclib-0.4.2-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details for pyheclib-0.4.2-cp310-cp310-macosx_14_0_arm64.whl
pyheclib-0.4.2-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details for pyheclib-0.4.2-cp39-cp39-win_amd64.whl
pyheclib-0.4.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for pyheclib-0.4.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
pyheclib-0.4.2-cp39-cp39-macosx_14_0_arm64.whl CPython 3.9 CPython 3.9 macOS 14.0+ ARM64 Details for pyheclib-0.4.2-cp39-cp39-macosx_14_0_arm64.whl
pyheclib-0.4.2-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details for pyheclib-0.4.2-cp38-cp38-win_amd64.whl
pyheclib-0.4.2-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for pyheclib-0.4.2-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
pyheclib-0.4.2-cp38-cp38-macosx_14_0_arm64.whl CPython 3.8 CPython 3.8 macOS 14.0+ ARM64 Details for pyheclib-0.4.2-cp38-cp38-macosx_14_0_arm64.whl

Total release size: 16.6 MB

Release files / pyheclib-0.4.2.tar.gz

Download URL pyheclib-0.4.2.tar.gz
Size 1.6 MB
Tags Source
SHA-256 checksum
How to use checksums
534de666583f531df562ac355a43523b63abc6ef7139630a911aa253b64fec7d
BLAKE2b-256 checksum
How to use checksums
837418496677768d4d05955ca56505104e2eac0f95d328a8be7e5b226b4726c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp314-cp314-win_amd64.whl

Download URL pyheclib-0.4.2-cp314-cp314-win_amd64.whl
Size 323.9 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
5170da629d19c8c60fdecb5083b7c2b889ad1c39f8769e9df72381401f86b195
BLAKE2b-256 checksum
How to use checksums
ff1e24bd1a1a6544b0c581a03be584238db0fbbd6866d07c9036a081a5e831b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyheclib-0.4.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.3 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
122c1d5209852c75267e9f0317ab1c86d1a31281209896255ec0fdec11beb15c
BLAKE2b-256 checksum
How to use checksums
91ca2e7ce82d9dcc1150876cec53a894b79d8fd6415902c634e8ba41b9481dfd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp314-cp314-macosx_14_0_arm64.whl

Download URL pyheclib-0.4.2-cp314-cp314-macosx_14_0_arm64.whl
Size 509.2 kB
Tags CPython 3.14 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
1355c17328851bedb2ecf6e5ffbd0958d0382cb6e63fdde3e52771ba3f6de323
BLAKE2b-256 checksum
How to use checksums
2da527b1e3788c2ae476a36e51036ec56e2e92450b4b48717c871dd258ac3853
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp313-cp313-win_amd64.whl

Download URL pyheclib-0.4.2-cp313-cp313-win_amd64.whl
Size 313.9 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
6930957f0d2ef321cb16c4e8c09e96195032cd2bae6c1454232649e1d30df1f9
BLAKE2b-256 checksum
How to use checksums
b34975c00f36e570994e50e50136d8ff6fcfcd27bdd948ed5a7f89792b1838c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyheclib-0.4.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.3 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
053da5525045f42712a38b1cc03bdfbd461fcaa3bd2eae08fb743adbde07178e
BLAKE2b-256 checksum
How to use checksums
d59a085d1b0a2ebbad264161f0865fa247d1a94ef4613e40ccf0f4eee19df945
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp313-cp313-macosx_14_0_arm64.whl

Download URL pyheclib-0.4.2-cp313-cp313-macosx_14_0_arm64.whl
Size 508.6 kB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
78472e035d31e50a99a0a0f0c3ed312a9394ffb6d1bec2619f365c066d87255c
BLAKE2b-256 checksum
How to use checksums
b674e87f4efac9208249918eb6660952151d3bb97903bc0883f12a59f9fbde47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp312-cp312-win_amd64.whl

Download URL pyheclib-0.4.2-cp312-cp312-win_amd64.whl
Size 314.3 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
8ee53f597ae4b903e9a694645003c2620a00727d512026ee5916d6e24b3278cc
BLAKE2b-256 checksum
How to use checksums
f8db347d676835ca623b90ef0a81763ebad006bd5190c79275ec2e08297bf63a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyheclib-0.4.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.3 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
650f765060b3c7e41b73e14ae40daac59702c47df2f9ddf1e1c56dfcbff39740
BLAKE2b-256 checksum
How to use checksums
fbad38e61371b6cbc860930a97628be1db0048dc961879a8227a08829bb428c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp312-cp312-macosx_14_0_arm64.whl

Download URL pyheclib-0.4.2-cp312-cp312-macosx_14_0_arm64.whl
Size 507.8 kB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
8595fed3a4491899f58855330ea64464de06ea42b38ebae9e7c254a989446c17
BLAKE2b-256 checksum
How to use checksums
1c9fcc2afc4019fcc6e6a0404e6a7281e3e7dcef80f87db505a4e6f1bafa3c0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp311-cp311-win_amd64.whl

Download URL pyheclib-0.4.2-cp311-cp311-win_amd64.whl
Size 316.8 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
769bf6653a4127720c153d39d3b845c80d68cd70023b09ed2389f52d1e6ece3e
BLAKE2b-256 checksum
How to use checksums
9c230a88134979a0b150cf8dac9f95915a61fec7c3407180f4783ea2f84b50cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyheclib-0.4.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.3 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e6bdd77f1fdb2afe841b705ef5a370d8a59754b3817caac8bc4c611e702030d5
BLAKE2b-256 checksum
How to use checksums
b01e49d28f055dc4179f2b78119eeb78f8ddb1b1c3a56690927153bbad5438e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp311-cp311-macosx_14_0_arm64.whl

Download URL pyheclib-0.4.2-cp311-cp311-macosx_14_0_arm64.whl
Size 508.1 kB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
a79d635ef198feed8de1768c8f54b8d75a172ab0a783eee502f622932e4dbfb0
BLAKE2b-256 checksum
How to use checksums
5daa310dd87db3a282ebc4404e08f91a16149b5b99baa9999dc0f79c5e70e753
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp310-cp310-win_amd64.whl

Download URL pyheclib-0.4.2-cp310-cp310-win_amd64.whl
Size 317.2 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
52b27118f62f03d48d223be8b958027bb5673497da64d8d0a54c0a6a55248f71
BLAKE2b-256 checksum
How to use checksums
e5c3af425ea30fe37e914bba7ba69acb3e82b32250f9be359bf2f43564c6d920
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyheclib-0.4.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.3 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
aa2a58653798c128296b81b6c1752f86918ab9a854c180b10df41777d455a2ab
BLAKE2b-256 checksum
How to use checksums
abfc360e3418678681a74ebc86b6d14ead3dfd6a0acd0fa6fe2b0857f1705797
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp310-cp310-macosx_14_0_arm64.whl

Download URL pyheclib-0.4.2-cp310-cp310-macosx_14_0_arm64.whl
Size 509.2 kB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
6e5cdbf8eec25410c4ddaddf40a7659d2099cb1e0920d96ad3e7270b8e0760c8
BLAKE2b-256 checksum
How to use checksums
bddede5c534f88dd1253f670f83de2c03ed51181b6f1abf12bf5b8a4e2ecb915
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp39-cp39-win_amd64.whl

Download URL pyheclib-0.4.2-cp39-cp39-win_amd64.whl
Size 317.6 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
05975af51ed1a8ba8b4f3330dc477c3f43f5f0ade4ad45e9a4f2dcdc201c4aae
BLAKE2b-256 checksum
How to use checksums
6cada5574e5923e49744a792fdc90394df45b492e02b0b30b98fd4fb3a5f9221
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyheclib-0.4.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.3 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
999425aaef8f13ad32c4bc4a1f70d74c8d46d7fa78248a802c2fab144e7ffe35
BLAKE2b-256 checksum
How to use checksums
6d50d81a504392e3d054fee5d5c755fb765e2741e191405eafbaea7590c25e4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp39-cp39-macosx_14_0_arm64.whl

Download URL pyheclib-0.4.2-cp39-cp39-macosx_14_0_arm64.whl
Size 509.9 kB
Tags CPython 3.9 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
0cf4b122b1c61a40a455bdad5550904b4517fe6d51e1e0954bc8d82c03926490
BLAKE2b-256 checksum
How to use checksums
ada8bbb14b8d38a26b9bfde531777d16f06d3da0caaad2ec51c7f0282b82f552
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp38-cp38-win_amd64.whl

Download URL pyheclib-0.4.2-cp38-cp38-win_amd64.whl
Size 316.2 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
38aea1f73f7a44f0bb82c07b83fa15440f4fbfe4b35b8ab8b0c9bcda23b70a26
BLAKE2b-256 checksum
How to use checksums
ac79fc7f31e52f3fbc4b1f4cf5df7eca445360d1b1cd042b465ebf8cde217b1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL pyheclib-0.4.2-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 1.3 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4ee2e1f449f85de5edfb596117a22780727636b0c1e6bff1364aa96fe140b024
BLAKE2b-256 checksum
How to use checksums
17960910a3c4649bea31e6342b347b893b20d2dcb17647a184bd31e9a609e192
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / pyheclib-0.4.2-cp38-cp38-macosx_14_0_arm64.whl

Download URL pyheclib-0.4.2-cp38-cp38-macosx_14_0_arm64.whl
Size 507.2 kB
Tags CPython 3.8 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
fccc9aceb69272acc2c896d3728dde8cec5393678cd84d34eeed82438c363b9d
BLAKE2b-256 checksum
How to use checksums
aaf6f38a34ab61e86985b5a45407949f0341c7fc12b36b8c0b671328b23539b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

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

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Security for pyheclib 0.4.2

Provenance

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

Full provenance

All 22 files in this release have been uploaded with provenance metadata.

Select from 22 files

Attestation for pyheclib-0.4.2.tar.gz

PyPI Publish Attestation

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

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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