feat: add awkward-cpp v22 (#4101)

This commit is contained in:
Angus Hollands 2023-08-30 15:28:59 +01:00 committed by GitHub
parent c58be1b4e6
commit 571e843e9a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 55 additions and 1 deletions

View File

@ -108,7 +108,7 @@ myst:
deprecation {pr}`3635`, cachetools {pr}`3635`, xyzservices {pr}`3786`,
simplejson {pr}`3801`, protobuf {pr}`3813`, peewee {pr}`3897`,
Cartopy {pr}`3909`, pyshp {pr}`3909`, netCDF4 {pr}`3910`, igraph {pr}`3991`,
CoolProp {pr}`4028`, contourpy {pr}`4102`.
CoolProp {pr}`4028`, contourpy {pr}`4102`, awkward-cpp {pr}`4101`.
- Upgraded libmpfr to 4.2.0 {pr}`3756`.
- Upgraded scipy to 1.11.1 {pr}`3794`, {pr}`3996`
- Upgraded scikit-image to 0.21 {pr}`3874`

View File

@ -0,0 +1,27 @@
package:
name: awkward-cpp
version: 22
top-level:
- awkward_cpp
source:
url: https://files.pythonhosted.org/packages/8b/f8/97efcc2d52e2f9967f9beed86ed6736fc6eed91eb2d974a1bdc8c438146d/awkward-cpp-22.tar.gz
sha256: 21679636fb21cfe3715f88a32326a579199384db2da4a62995c310502d7fe85f
build:
script: |
export CMAKE_ARGS="${CMAKE_ARGS} -DEMSCRIPTEN=1"
exports: whole_archive
requirements:
run:
- numpy
test:
imports:
- awkward_cpp
about:
home: https://pypi.org/project/awkward-cpp/
summary: CPU kernels and compiled extensions for Awkward Array
license: BSD-3-Clause

View File

@ -0,0 +1,27 @@
from pytest_pyodide import run_in_pyodide
@run_in_pyodide(packages=["awkward-cpp"])
def test_awkward_cpp(selenium):
# Test a single kernel
import ctypes
import numpy as np
from awkward_cpp.cpu_kernels import lib
num_null = np.array([123], dtype=np.int64)
mask = np.array([1, 1, 0, 1, 1, 0], dtype=np.int8)
length = 6
valid_when = True
kernel_impl = lib.awkward_ByteMaskedArray_numnull
args = [
ctypes.cast(num_null.ctypes, kernel_impl.argtypes[0]), # type: ignore[arg-type]
ctypes.cast(mask.ctypes, kernel_impl.argtypes[1]), # type: ignore[arg-type]
length,
valid_when,
]
ret_pass = kernel_impl(*args)
assert ret_pass.str is None
assert num_null[0] == 2