1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 setuptools-scm,
7 numpy,
8 pytestCheckHook,
9 hypothesis,
10}:
11
12buildPythonPackage rec {
13 pname = "array-api-strict";
14 version = "2.4.1";
15 pyproject = true;
16
17 src = fetchFromGitHub {
18 owner = "data-apis";
19 repo = "array-api-strict";
20 tag = version;
21 hash = "sha256-m0uWaeUwHsWyAOxS7nxY8c+HWUhz+mOKNE4M0DsiClI=";
22 };
23
24 postPatch = ''
25 substituteInPlace pyproject.toml \
26 --replace-fail "setuptools >= 61.0,<=75" "setuptools"
27 '';
28
29 build-system = [
30 setuptools
31 setuptools-scm
32 ];
33
34 dependencies = [ numpy ];
35
36 nativeCheckInputs = [
37 pytestCheckHook
38 hypothesis
39 ];
40
41 pythonImportsCheck = [ "array_api_strict" ];
42
43 disabledTests = [
44 "test_disabled_extensions"
45 "test_environment_variables"
46 ];
47
48 meta = {
49 homepage = "https://data-apis.org/array-api-strict";
50 changelog = "https://github.com/data-apis/array-api-strict/releases/tag/${src.tag}";
51 description = "Strict, minimal implementation of the Python array API";
52 license = lib.licenses.bsd3;
53 maintainers = with lib.maintainers; [ berquist ];
54 };
55}