Skip to main content

ndpolator: fast, n-dimensional linear interpolation and extrapolation on sparse grids

Project description

GitHub commit activity GitHub last commit GitHub Issues or Pull Requests GitHub Actions Workflow Status Documentation

Ndpolator

Fast, n-dimensional linear interpolation and extrapolation on sparse grids.

Ndpolator is a combined interpolator/extrapolator that operates on sparse (incompletely populated) $n$-dimensional grids. It estimates scalar or vector function values within and beyond the definition range of the grid while still avoiding the need to impute missing data or sacrifice the benefits of structured grids. Ndpolator is written in C for speed and portability; a python wrapper that uses numpy arrays is provided for convenience.

Recent changes

ndpolator 1.2.3

  • extrapolating with extrapolation_mode='nearest' when two or more points were at the exact same distance (within machine precision) did not consistently select the same point on all architectures, causing potential inconsistencies across different machines.

ndpolator 1.2.2

  • docbuild moved from PR actions to release action.

  • an incorrect argument name in unit tests fixed.

ndpolator 1.2.1

  • the computation of distance between the query point and the grid was not done correctly in off-grid vertices; fixed.

  • the find_nearest() function now stores an array of nearest points sorted by distance.

ndpolator 1.2

  • distance between the query point and the grid for off-grid query points is now explicitly computed and returned.

  • github workflows substantially improved.

ndpolator 1.1

  • memory management improvements.

ndpolator 1.0

  • initial release.

Installation

Ndpolator sources are hosted on pypi; you can install the latest release by issuing:

pip install ndpolator

To install ndpolator from github, clone the repo and install it from the local directory with pip:

$> git clone https://github.com/aprsa/ndpolator ndpolator
$> cd ndpolator
$> pip install .

Once installed, you can test the installation by running a pytest:

$> cd tests
$> pytest

Documentation

API reference is available on gh-pages.

Usage example

To demonstrate the usage of ndpolator, let us consider a 3-dimensional space with three axes of vastly different vertex magnitudes. For comparison purposes, let the function that we want to interpolate and extrapolate be a linear scalar field:

\mathbf a_1 = \{1000, 2000, 3000, 4000, 5000\}, \quad \mathbf a_2 = \{1, 2, 3, 4, 5\}, \quad \mathbf a_3 = \{0.01, 0.02, 0.03, 0.04, 0.05\},
\mathbf F(x, y, z) = \frac{x}{1000} + y + 100 z.

A suitable ndpolator instance would be initiated and operated as follows:

import numpy as np
import ndpolator

# initialize the axes:
a1 = np.linspace(1, 5, 5)
a2 = np.linspace(10, 50, 5)
a3 = np.linspace(100, 500, 5)

# initialize interpolation space:
ndp = ndpolator.Ndpolator(basic_axes=(a1, a2, a3))

# define a scalar function field and evaluate it across the grid:
def fv(pt):
    return pt[0] + pt[1] + pt[2]

grid = np.empty((len(a1), len(a2), len(a3), 1))
for i, x in enumerate(a1):
    for j, y in enumerate(a2):
        for k, z in enumerate(a3):
            grid[i, j, k, 0] = fv((x, y, z))

# label the grid ('main') and register it with the ndpolator instance:
ndp.register(table='main', associated_axes=None, grid=grid)

# draw query points randomly within and beyond the definition ranges:
query_pts = np.ascontiguousarray(
    np.vstack((
        np.random.uniform(-5, 5, 10),
        np.random.uniform(-50, 50, 10),
        np.random.uniform(-500, 500, 10))
    ).T
)

# interpolate and extrapolate linearly:
interps = ndp.ndpolate(table='main', query_pts=query_pts, extrapolation_method='nearest')

print(f'a1 = {a1}')
print(f'a2 = {a2}')
print(f'a3 = {a3}')
print(f'query_pts = {query_pts}')
print(f'interps = {interps}')

Purpose

Multi-variate ($n$-dimensional) interpolation and extrapolation are techniques used in mathematics, statistics and science to estimate unknown values between and beyond existing data points in a multi-dimensional space. Interpolation involves estimating the function value at points within the range determined by the existing data points, while extrapolation involves estimating the function value beyond that range. There are numerous robust implementations of multi-variate interpolation, including k nearest neighbors (Cover & Hart 1967), natural neighbor interpolation (Sibson 1981), radial basis functions (Hardy 1971), kriging (Cressie 1990), and many others. Scipy, for example, features an entire module for interpolation (scipy.interpolate) that implements several multi-variate interpolation classes, including piecewise-linear, nearest neighbor, and radial basis function interpolators. Unfortunately, none of the implemented scipy methods lend themselves readily to extrapolation: at most they can fill the values off the convex hull with nans or a value supplied by the user. In addition, interpolators that operate on a regular $n$-dimensional grid do not allow any missing data; those values either need to be imputed by using unstructured data interpolators, or structured data interpolators need to be abandoned altogether.

Ndpolator aims to fill this gap: it can both interpolate and extrapolate function values within and beyond the grid definition range, and it can operate on incomplete grids. As a side benefit, ndpolator can estimate both scalar and vector function values, and it can reduce grid dimensionality for points of interest that lie on grid axes. It is optimized for speed and portability (the backend is written in C), and it also features a python wrapper. Ndpolator was initially developed for the purposes of the eclipsing binary star modeling code PHOEBE (Prša et al. 2016), to allow the interpolation and extrapolation of specific intensities in stellar atmospheres. Yet given the gap in the multi-variate interpolation and extrapolation landscape, ndpolator development has been separated from PHOEBE and made available to the community as a standalone package.

Ndpolator's operation principles

Consider a scalar or a vector field $\mathbf{F}$ that is sampled in a set of $N$ $n$-dimensional points, $\{\mathbf F (x_1, \dots, x_n)_k\}$, $k = 1 \dots N$. Let these function values be sampled on a grid, where axes $\mathbf{a}_k$ span each grid dimension, so that $\mathsf{X}_{k=1}^{n} \mathbf a_k \equiv \mathbf{a}_1 \times \mathbf{a}_2 \times \dots \times \mathbf{a}_n$ is a cartesian product that spans the grid. Axis spacing need not be uniform: vertices can be separated by any amount that is required to make the grid sufficiently locally linear. If the grid is complete, i.e. if there is a function value $\mathbf F(x_1, \dots, x_n)$ associated with each grid point, we have $N_c = \prod_k l(\mathbf a_k)$ function value samples, where $l(\mathbf a)$ is the length of axis $\mathbf a$. If the grid is incomplete, i.e. if some function values are missing, then $N < N_c$. Ndpolator defines grid points with sampled values as nodes, and grid points with missing values as voids. The points in which we want to estimate the function value are called query points or points of interest. The smallest $n$-dimensional subgrid that encloses (or is adjacent to) the query point is called a hypercube.

Unit hypercube transformation

The first, most fundamental principle of ndpolator is that all interpolation and extrapolation is done on unit hypercubes. In real-world applications, it is seldomly true that all axes are defined on a unit interval. This can lead to vertices of significantly different orders of magnitude along individual axes. To that end, ndpolator first normalizes the hypercubes by transforming them to unit hypercubes: given the sets of two consecutive axis values that span a hypercube, $(\mathbf a_{1,p}, \mathbf a_{1,p+1}) \times (\mathbf a_{2,q}, \mathbf a_{2,q+1}) \times \dots \times (\mathbf a_{n,t}, \mathbf a_{n,t+1})$, the unit transformation maps it to the $[0, 1] \times [0, 1] \times \dots \times [0, 1] \equiv [0, 1]^n$ hypercube. All query points are subjected to the same transformation, creating unit-normalized query points. Therefore, interpolation (and extrapolation) always operates on unit hypercubes, which is computationally the least expensive and numerically the most stable process. An additional benefit of this transformation is that extrapolation inherits the nearest hypercube's grid spacing, thus naturally accounting for (potentially) variable spacing in different regions of the grid.

Sequential dimensionality reduction

The second operating principle of ndpolator is sequential dimensionality reduction. Consider a 3-dimensional hypercube in \autoref{fig:interpolation}; let us assume that function values in all 8 corners of the hypercube are sampled, i.e. we have 8 nodes. The point of interest is depicted with an open symbol in the left panel, along with projections onto the hypercube faces. Ndpolator starts with the last axis, in this case $\mathbf a_3$, and it interpolates function values along that axis to the projections of the point of interest (second panel). These are univariate interpolations. The process yields 4 vertices (depicted in open symbols), thereby reducing the initial dimension $N=3$ by 1, to $N-1=2$. The process is then repeated (third panel), this time along the second axis, $\mathbf a_2$, yielding 2 vertices, thereby reducing the dimension to 1. Finally, the last interpolation is done along axis $\mathbf a_1$ (right panel), yielding a single vertex, the point of interest itself. The dimension is thus reduced to 0, and the function value is determined. Thus, for an $n$-dimensional hypercube, ndpolator performs $\sum_{k=0}^{n-1} 2^k$ univariate interpolations to estimate $\mathbf F$ in the point of interest, which implies the $N \log N$ time dependence.

An example of sequential dimensionality reduction in 3 dimensions.\label{fig:interpolation}

Initial dimensionality reduction

The third operating principle of ndpolator is initial dimensionality reduction. In real-life applications it frequently happens that some of query point coordinates are aligned with the axes. For example, one of the axes might allow the variation of the second order variable, but its value usually defaults to the value that is sampled across the grid. When this happens, the initial hypercube dimension can be reduced by 1 for each aligned axis. The extreme case where the query point coincides with a node means that hypercube dimensionality is reduced to 0, and there is no need for interpolation. For that reason, ndpolator flags each coordinate of the query point as "on-grid", "on-vertex", or "out-of-bounds". When "on-vertex," hypercube dimension can be immediately reduced. When that happens, the time dependence is reduced to $(N-M) \log (N-M)$, where $M$ is the number of coordinates aligned with the axes.

Incomplete hypercubes

The fourth operating principle of ndpolator is dealing with incomplete hypercubes. If any of the hypercube corners are voids, we cannot interpolate. For that purpose, ndpolator keeps track of all fully defined $n$-dimensional hypercubes; when a query point lies within an incomplete hypercube, ndpolator finds the nearest fully defined hypercube and uses it to extrapolate the function value in the point of interest. While this is globally still considered interpolation as the query point is within the grid's definition range, the estimated function value is, strictly speaking, extrapolated from the nearest fully defined hypercube. Note that, when grids are particularly sparse and functios strongly non-linear, that can cause a substantial accumulation of error. In such cases, unstructured interpolation techniques might be a better fit.

Extrapolation modes

The fifth operating principle of ndpolator is extrapolation. Ndpolator has three extrapolation methods: none, nearest and linear. When extrapolation method is set to none, the function value that is outside the range of axes is set to nan. For extrapolation method nearest, ndpolator stores a list of all nodes and assigns a function value in the node that is nearest to the query point. Lastly, if extrapolation method is set to linear, ndpolator linearly extrapolates from the nearest fully defined hypercube in a manner equivalent to dealing with incomplete hypercubes. The choice for extrapolation method depends on the multi-variate function that we are estimating; if it is highly non-linear, extrapolation should be avoided, so none and nearest might be appropriate; if it is largely linear or varies slowly, then a linear extrapolation method might be warranted. Ndpolator is a linear extrapolator, so it cannot adequately estimate non-linear multi-variate functions.

Basic axes and associated axes

The question of grid completeness is quite impactful for performance; that is why the sixth operating principle of ndpolator is to distinguish between basic axes and associated axes. Axes that can have voids in their cartesian products are referred to as basic. For these axes, we need full ndpolator machinery to perform interpolation and extrapolation. On the other hand, a subset of axes may have all nodes in their cartesian products, i.e. they are guaranteed to be sampled in all vertices that basic axes are sampled in; these are referred to as associated axes. Given that their sampling is ascertained, interpolation and extrapolation can proceed without concerns for incomplete hypercubes -- that is, for as long as their basic hypercube counterparts (hypercubes spun by basic axes) are complete. Each associated axis reduces the dimensionality of the hypercubes that need to be stored for extrapolation lookup, thus optimizing performance further.

Function value dimensionality

The seventh and final operating principle concerns function value dimensionality. Most interpolators assume that the function value $\mathbf F$ is a scalar; ndpolator does not make that assumption. $\mathbf F_r(x_1, \dots, x_n)$ can be a scalar or a vector or arbitrary length $R$ (within reason, of course). It is then a requirement that all nodes are also $R$-dimensional. Ndpolator will then interpolate and extrapolate all function value components separately, and yield an $R$-dimensional estimate of the function value $\mathbf F$ in the point of interest.

Hypercube caching

While not explicitly a part of ndpolator's operating principles, ndpolator exposes two auxiliary functions, import_query_pts() and find_hypercubes(), that can be used to cache hypercubes. That way, a calling program can group query points that are enclosed by a single hypercube and perform bulk interpolation without the need to find the corresponding hypercube for each query point successively. While the indexing and the hypercube search are both binary, avoiding the lookup when possible further optimizes the runtime.

API documentation and tests

Ndpolator is released under the GNU General Public License. The Application Programming Interface (API) is available for the underlying C library on gh-pages. The test suite and automated API building are incorporated into github's Continuous Integration (CI) infrastructure. Any and all feedback, particularly issue reporting and pull requests, are most welcome.

Acknowledgements

Financial support for this project by the National Science Foundation, grant #2306996, is gratefully acknowledged.

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

ndpolator-1.2.3.tar.gz (53.6 kB view details)

Uploaded Source

Built Distributions

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

ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (36.8 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (37.1 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp313-cp313-musllinux_1_2_x86_64.whl (71.8 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

ndpolator-1.2.3-cp313-cp313-musllinux_1_2_i686.whl (68.4 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

ndpolator-1.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (73.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (68.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp313-cp313-macosx_11_0_arm64.whl (37.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ndpolator-1.2.3-cp313-cp313-macosx_10_13_x86_64.whl (38.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

ndpolator-1.2.3-cp312-cp312-musllinux_1_2_x86_64.whl (71.8 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

ndpolator-1.2.3-cp312-cp312-musllinux_1_2_i686.whl (68.4 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

ndpolator-1.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (73.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (69.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp312-cp312-macosx_11_0_arm64.whl (37.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ndpolator-1.2.3-cp312-cp312-macosx_10_13_x86_64.whl (38.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

ndpolator-1.2.3-cp311-cp311-musllinux_1_2_x86_64.whl (71.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

ndpolator-1.2.3-cp311-cp311-musllinux_1_2_i686.whl (67.9 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

ndpolator-1.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (73.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (68.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp311-cp311-macosx_11_0_arm64.whl (37.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

ndpolator-1.2.3-cp311-cp311-macosx_10_9_x86_64.whl (38.1 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

ndpolator-1.2.3-cp310-cp310-musllinux_1_2_x86_64.whl (70.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

ndpolator-1.2.3-cp310-cp310-musllinux_1_2_i686.whl (67.4 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

ndpolator-1.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (72.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (68.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp310-cp310-macosx_11_0_arm64.whl (37.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

ndpolator-1.2.3-cp310-cp310-macosx_10_9_x86_64.whl (38.1 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

ndpolator-1.2.3-cp39-cp39-musllinux_1_2_x86_64.whl (70.7 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

ndpolator-1.2.3-cp39-cp39-musllinux_1_2_i686.whl (67.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ i686

ndpolator-1.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (72.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (67.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp39-cp39-macosx_11_0_arm64.whl (37.4 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

ndpolator-1.2.3-cp39-cp39-macosx_10_9_x86_64.whl (38.1 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

ndpolator-1.2.3-cp38-cp38-musllinux_1_2_x86_64.whl (70.8 kB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

ndpolator-1.2.3-cp38-cp38-musllinux_1_2_i686.whl (67.1 kB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ i686

ndpolator-1.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (72.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (68.0 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp38-cp38-macosx_11_0_arm64.whl (37.2 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

ndpolator-1.2.3-cp38-cp38-macosx_10_9_x86_64.whl (37.9 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_x86_64.whl (70.0 kB view details)

Uploaded CPython 3.7mmusllinux: musl 1.2+ x86-64

ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_i686.whl (66.6 kB view details)

Uploaded CPython 3.7mmusllinux: musl 1.2+ i686

ndpolator-1.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (71.9 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

ndpolator-1.2.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (67.3 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ndpolator-1.2.3-cp37-cp37m-macosx_10_9_x86_64.whl (37.7 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

File details

Details for the file ndpolator-1.2.3.tar.gz.

File metadata

  • Download URL: ndpolator-1.2.3.tar.gz
  • Upload date:
  • Size: 53.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ndpolator-1.2.3.tar.gz
Algorithm Hash digest
SHA256 39fa03d4d7ad773912568152c4b6746ceac0bd1dde406aebe1cfe1560a4ce33a
MD5 00caa3a09c41835c7a09c2e7d984722e
BLAKE2b-256 9270d2aa4e9b9143bd49c8b2170044caf9ed6437486432bffbe5f3acbbd6b97b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3.tar.gz:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 21fa17cc333c186741fbcb96b7e81f07d82a8bae938d7d418bf01456738e82fb
MD5 2efe78dc47632373c3f192e03acca043
BLAKE2b-256 e872203d2854c7fc5608e8267571b00fc5beef94997ae923e2371c30aad6baf9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ed4e85b15c77c1c505c5e55249741b0d341927adf2f2e4d7678162afec1d2d88
MD5 4179cb631a2abdb71192e2540a7f1d5a
BLAKE2b-256 e6f9a751b5c5aa6e23751fce40690d787bbae06de6f965116c0eea23a7445f18

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 221e8ecaf82222dcff4e93bdaba9c9c20291b48608d22a43e203d116936f72ab
MD5 7be4575c7aa25ca91d7228053d208026
BLAKE2b-256 dc33cb2e0259a9ff5f2a4ba65dd2102f544a819ae34b941b3bbf6e71b58e065f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp313-cp313-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 fe372e8e5991845feff0f19e892fdf37fdc28c6d7cacf9157591f629043a0361
MD5 7968e8cb04b55f78f702467c1c0b473e
BLAKE2b-256 981605b34b66515dbfce16941014dccfbb892511b3debdcc860d6415435ff729

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp313-cp313-musllinux_1_2_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 35c053e41138288f0f784520d6d60ff71270b6f57ca7685b6739b69a5624dca4
MD5 11eeed1062ece6a11ecaf6fb8af786cf
BLAKE2b-256 ed58800f7e1a852b6458a4195a4a2a63e7e4ee25b6177cd7e36df18675380e92

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 839759bf61df513475aa73b5ab56f8ce9c7c85ebdf30e09655e2a00ac39242d6
MD5 4c0409d3324a788240d9d4662b0aea01
BLAKE2b-256 54b54e02443208f1b80c5f2be1b0971255fc4c347acaa57ca198fdf2c846d887

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 178532a8d8e2516b9107f3679565a708ef0bc8b2f2788b7acd44d25752db2123
MD5 9c798ee00fb801579ce4afe70485b711
BLAKE2b-256 24ac7e65ccf61c7e10574f612fed94a69732f853d3b78e88c9258d02c7df462b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 1b83e92110d498890c853b0a122081f435a8d24abddd459f28e80626f0320423
MD5 2eff3883eb144d9f3a6fa6fc471ebc15
BLAKE2b-256 8033de05bbcf52af2f39ce06d54148ea911f72111aa3502ef5c4f382497c54b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c9bacd0ad8f5a8906da5022cde3a2b3033ee2874745ffc579ba17b794f5c5468
MD5 4b39f1b9ab134d443c5386aad7655413
BLAKE2b-256 82bde83b2d08240225ad0ef1eb52d5ee43432f0e089bef448ec5f35b5e03a8f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp312-cp312-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 26dd4e6e452b1589bb511e182da8cf3685c2e90dca653bc58d7ffd69b8e61943
MD5 332228f8fd4dd34bb501615fd02ab61f
BLAKE2b-256 9baa64cd810fe538e423e284b06a71d45681cacc01a0fc3f46e90b06093bd1ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp312-cp312-musllinux_1_2_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dd391c7d2609e13af18f1bc607f8b9a1d01a0bfb5a7f63c50423a81a0ab77e61
MD5 6066edb4a40a1e925adf75e1341d57a1
BLAKE2b-256 593b363fadd69c5fa30874aed4e9ebc15c5d0086ba99a660a57619455c18a014

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a7d2a9dcdb8d832596e861adb721c9c34185fb42d962abd5ea6b85084885f65e
MD5 8867bd7f255727dfebc2b170600a0efb
BLAKE2b-256 2cca5efd0debcfe5874f82aba33c028f3498f6cb4c472ed1b3de946c200edb65

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 23e0719e4d7dd84aef6d51dbf78ba1857aab9578995b2dfa07a04587483c3b8d
MD5 1127ce011970354f5468ec328f5af05f
BLAKE2b-256 af100aaefa26d164a75fe70a2710c88f263508f2c2efc1a521468e8eff33b6fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 93278ee89a64aeeb5d6fe88e09251416a49e7e60bc08c650bdd984cd7b859e73
MD5 94ff1ab818cdaecf0876565f5cff1b8b
BLAKE2b-256 cf1d3cd3627a32cdc6774cc392b2957353227b58d973be939ce21dc147190e4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dd2512976fe36173cc91208dee96b4f422068c3c819f6f44af207c0f33fea972
MD5 3894de8a932ba16ca9292f1a4529dd01
BLAKE2b-256 2436bc2d9e9b84074fb02d2a7539b0f575c94ff8b026b66462b186a0d13350ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 35904afef6c48b46800bc4822b1e7e43f8167bd7b8f816551c16c4af2c7123ca
MD5 714e9ffbe6ea8f5ffa3c6ca9d70f37c6
BLAKE2b-256 96b302c01f21ae5c69288cad4d2b1b1069e6edec80de72c1fdb6bf928163a0d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp311-cp311-musllinux_1_2_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 87b5b607ae680c9cbb75a6c6e59b5d9e9647f9f4ed37641b85f33afdfc5728b7
MD5 3e134a8a5966455f809d195abfbf6107
BLAKE2b-256 7009427a83f679b209352c4e74678df6f9c7b95a0a5d4fe84917d28fd45adc1b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7796d71a4c6e4d6480d264890878de86d90a604d9cff2636da2adea3edd29ea2
MD5 f2f078c96455525494c45a7846e99105
BLAKE2b-256 7346595312ae31cf114279f63c33a1e536b9eb193628c0f1711013c120925d72

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d83f5bbc5ddaeb04be423d3f4eaa5b4a0fe40f503e475b69915bf038dea45d92
MD5 d72c83d6e331560bc90e5a5afa88311e
BLAKE2b-256 9e83156c65f08381fe9b3950430da03decda41910132f89d60bb9be376d2f480

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 214191538be05d0c3b5d4149d3e7a0f466ab8003756e0fe9998b8b45de4256b3
MD5 8582629ac275a6447142daf3e8daa4bc
BLAKE2b-256 6d36283cc445358924fa08495b1a3b30b6ab67e8edbdb0db55676eb8f83650fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1de0bcd59b2a31edb70bf773ee2d696d313c0c5ea36bfc8249f9f967bff15a42
MD5 0f09bbd849fffa286111731fc1e85ea5
BLAKE2b-256 7f66f3a2bc7845ef7cfa9100e675df1ec6bf87674f5071cb7a7889911aaa7708

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp310-cp310-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 de8e3d44083f8da9f1c9fd1b003a0ffc5a4709dad51084df525536039c21fd00
MD5 1d8e364d324b024ec9d347d35391bfee
BLAKE2b-256 fbbcccc69e6230bd3cbcc2f6ea1978e9b68cc179a61f5897d2cef52768d84163

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp310-cp310-musllinux_1_2_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 85cdcd4f55b980ad41bd41dc25094ff9188abd416b8140c6f249f4fe4147f3b2
MD5 a2d925a1603be71695c025c21d0bb7e1
BLAKE2b-256 5675d461b84bc182b94078d3603ff1368120d86875c2f2e65a2e945f0324f990

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a9545c040e706cd57670f06a56c2282631f32a1ac6a5bff0b340dfdfae3fdadc
MD5 296f29d0d5d1d927f4ea30ccf00ba8ec
BLAKE2b-256 091b9d283185dd22511347d09686fb390d4a6acbe9eeccc2034a19e8f342e795

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4d430f8ea8987ae4cfded0f294652ac629b6f68ca46c5aabefc9ff322c2a38b9
MD5 43231f34098fd484bc8cce53f355d6e5
BLAKE2b-256 2f95250a4310d70b5bfc5f423c1455daf8055146ef5e3de10887ab626d8baf49

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0a07b68512a8fe444fe2e71f5c3fe5e887c34828e807aff3e52ec3801c95d031
MD5 327486831165fa33d85a46864d62ed5b
BLAKE2b-256 1125dd8de1e3b438cf3022e8bc475f3c22ed09d5d141c5c892050d4aa487af98

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a9048ade21bcc2d70856d1566d5bb65f0f36e69de875764ad519e21612c17958
MD5 80d6c27e2051ad4ab4bfeb7e2b2945a4
BLAKE2b-256 5d427f9ae284b8ebc98e91e161831067cf68d119560a79540668ff49c5410089

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp39-cp39-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp39-cp39-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 b95e2c256af51022b876d68f349df807ab30b1a7e1e47fa5149226df3729ffe3
MD5 c5c3a33b936efbd0e3cace883fd1ce09
BLAKE2b-256 3d3687b2813150715a6589f1708051f13cd1543b00ac1a878ee152495a3c9f97

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp39-cp39-musllinux_1_2_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c7a4c8d46803e67a25ce7a4f79c4ef710a6e8b9d8dd1046cd9abc049a4efaa88
MD5 ad9d08cffa7c141d101bd82308188d68
BLAKE2b-256 b17f8c1746e78ba60095f4a68b734585925323b709896800f80e36b40bf8d6c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 9677559ebce56a426528f7b8b11df5868d08e4b1a27ec9595b810804ea5c960d
MD5 8d994b89cb82207258d36b386b20a4a1
BLAKE2b-256 7ce3deddb2f5c5368d047976af52ed17e04856cf18ff0f9710c84eaf2b31b4a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6575a822fb99e6561cfd6a505574bd6f36ec366464c1d97146e76039bc5977c8
MD5 f324516c94cefb6a3eb53d196f8977d8
BLAKE2b-256 3dc82d7220183b90bdf73f0f4041caf34e6b53bbaec9816668ff71b63de20108

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e249926d65f3cc77b7f932f081a5b32de8db1a11aa99b70b4d8d87f7c0313a8d
MD5 6a24653573b5d0e330dddd41be8ecd77
BLAKE2b-256 20b107f09289e31c7d23268cf8009dd0810c46104209e1b87adc8b27f1f05f72

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d6fff4deaecc747f6e8cd75266f45d87d36f9361a983f6f6722139b4b66c0f11
MD5 79a77ebbcc938373307be872b65d3a99
BLAKE2b-256 8a5ba1b217fb39707a4c6a11ea673c2a99123b4709f298339f12e94745609825

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp38-cp38-musllinux_1_2_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp38-cp38-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp38-cp38-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 5d9a79d6d98328a7a054be6e1864a792d80e9d0c58a4d2b7d51bc551ef430132
MD5 91ca7c834a8b1e5daed487b05a59290a
BLAKE2b-256 66d9dfd12cc71c299f3ae23bcc659378c33a29f25efca65d79dacfdeaf6c73f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp38-cp38-musllinux_1_2_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d56b5725ba7b0bbc25f541588574ff11dfcbfe0fa116015d2e977e60cb01bdd0
MD5 72c932266cbccd11a4e854efa5e5e10f
BLAKE2b-256 909ad46e9bf25f8b39838b3adce820e4170cfd909a42be873c0329296a36e385

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8244d6fc1680a43b2fd9cd6970e63ebb1144817d9389774cf81f67d61389b32e
MD5 f763a143fbacf857ca2eee0832c86b6b
BLAKE2b-256 87cdfff36fdb7c371860bc525acf3dcf183de17f6869ad4fb5950178954b0e41

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a92909842b7c3d5cfa70ed5ccb5cd0046f9bfab74f44b4b6a94685a76847dcad
MD5 6b23d2acc5670b63c6a62b916cc581e6
BLAKE2b-256 d149828e105a29c7bb20fb19a0feb3527f3a6aed951ca3a6fa90d808b339a281

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp38-cp38-macosx_11_0_arm64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bd8d1b308c64cab3f198db9dffe9ec8f20741f7efa6a0f155ff562e6936c13c2
MD5 a661c0cdd17760eb92ff1ad42abfe6aa
BLAKE2b-256 5462e9610005608efe1d82eb9708baa3d810cf011db93887213194f8f50351eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp38-cp38-macosx_10_9_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1104209df117647693b94ae21ef494bc1768ad703d1e5c36b03dd2de4083849f
MD5 1f42aec5475632f9be8772c56aec638e
BLAKE2b-256 d35ac34adc6c0554f4d12c2add2d02ddff0c41c695951beb90a209be9ad1823b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 0d225fbe39a08232742a1bd07ffdded726c1a889dba244271649c04eee67d323
MD5 aeba5fcbdc688be504e1af50325a9790
BLAKE2b-256 f771f31a2cf6e2c1d3c70baab86add02780251c7b36993cbcd9435a5e8e2d241

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp37-cp37m-musllinux_1_2_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2f55993328c8300b2ac6b0408c5acac4a14031f7650a62e0b58c28aba663bacb
MD5 e6985a0e7b5b62ba8d70e01debaea768
BLAKE2b-256 1477ee795424c8c0d9a71c862fd1050e8cb3eb6a339a89aabc84170a3b080ae8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 416c903b8e393976753c7617feb0061b99ccaed2e669a79e6a5e998a95d28320
MD5 7957dc88f94f78664e0128570cad406a
BLAKE2b-256 a122f49dbf67c886f66efa010139ea1cd099087673edbdb09aab2a7e9aa8c962

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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

File details

Details for the file ndpolator-1.2.3-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ndpolator-1.2.3-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 01f5411225f1b35264dccb13efedac9012c114d615ea16a3fe6f8dbb14d5d3b2
MD5 889e450152a31427e35c08b36256fde4
BLAKE2b-256 8ca130908a95fd3367154bd237f354a973f08b32d6bb885c5e4aa46597195446

See more details on using hashes here.

Provenance

The following attestation bundles were made for ndpolator-1.2.3-cp37-cp37m-macosx_10_9_x86_64.whl:

Publisher: on_release.yaml on aprsa/ndpolator

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