uarray 0.9.3__tar.gz → 0.9.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. {uarray-0.9.3 → uarray-0.9.4}/.github/workflows/build.yaml +32 -32
  2. {uarray-0.9.3 → uarray-0.9.4}/.gitignore +2 -1
  3. {uarray-0.9.3/src/uarray.egg-info → uarray-0.9.4}/PKG-INFO +9 -10
  4. uarray-0.9.4/meson.build +48 -0
  5. {uarray-0.9.3 → uarray-0.9.4}/pixi.lock +447 -283
  6. {uarray-0.9.3 → uarray-0.9.4}/pyproject.toml +46 -24
  7. {uarray-0.9.3 → uarray-0.9.4}/src/CMakeLists.txt +0 -2
  8. {uarray-0.9.3 → uarray-0.9.4}/src/_uarray_dispatch.cxx +19 -24
  9. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/__init__.py +3 -2
  10. uarray-0.9.4/src/uarray/_version.py +1 -0
  11. uarray-0.9.4/src/uarray/_version.pyi +2 -0
  12. uarray-0.9.4/src/uarray/meson.build +36 -0
  13. uarray-0.9.4/src/uarray/tests/meson.build +8 -0
  14. uarray-0.9.4/tools/gitversion.py +31 -0
  15. uarray-0.9.3/PKG-INFO +0 -59
  16. uarray-0.9.3/setup.cfg +0 -4
  17. uarray-0.9.3/setup.py +0 -3
  18. uarray-0.9.3/src/uarray/_version.py +0 -34
  19. uarray-0.9.3/src/uarray.egg-info/SOURCES.txt +0 -71
  20. uarray-0.9.3/src/uarray.egg-info/dependency_links.txt +0 -1
  21. uarray-0.9.3/src/uarray.egg-info/requires.txt +0 -17
  22. uarray-0.9.3/src/uarray.egg-info/top_level.txt +0 -1
  23. uarray-0.9.3/src/vectorcall.cxx +0 -235
  24. uarray-0.9.3/src/vectorcall.h +0 -51
  25. {uarray-0.9.3 → uarray-0.9.4}/.clang-format +0 -0
  26. {uarray-0.9.3 → uarray-0.9.4}/.gitattributes +0 -0
  27. {uarray-0.9.3 → uarray-0.9.4}/.github/dependabot.yml +0 -0
  28. {uarray-0.9.3 → uarray-0.9.4}/CODE_OF_CONDUCT.md +0 -0
  29. {uarray-0.9.3 → uarray-0.9.4}/CONTRIBUTING.md +0 -0
  30. {uarray-0.9.3 → uarray-0.9.4}/LICENSE +0 -0
  31. {uarray-0.9.3 → uarray-0.9.4}/README.md +0 -0
  32. {uarray-0.9.3 → uarray-0.9.4}/docs/_templates/autosummary/base.rst +0 -0
  33. {uarray-0.9.3 → uarray-0.9.4}/docs/_templates/autosummary/class.rst +0 -0
  34. {uarray-0.9.3 → uarray-0.9.4}/docs/_templates/autosummary/module.rst +0 -0
  35. {uarray-0.9.3 → uarray-0.9.4}/docs/conf.py +0 -0
  36. {uarray-0.9.3 → uarray-0.9.4}/docs/enduser_docs.rst +0 -0
  37. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.BackendNotImplementedError.rst +0 -0
  38. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.Dispatchable.__init__.rst +0 -0
  39. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.Dispatchable.rst +0 -0
  40. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.all_of_type.rst +0 -0
  41. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.clear_backends.rst +0 -0
  42. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.create_multimethod.rst +0 -0
  43. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.generate_multimethod.rst +0 -0
  44. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.get_state.rst +0 -0
  45. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.mark_as.rst +0 -0
  46. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.register_backend.rst +0 -0
  47. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.reset_state.rst +0 -0
  48. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.rst +0 -0
  49. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.set_backend.rst +0 -0
  50. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.set_global_backend.rst +0 -0
  51. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.set_state.rst +0 -0
  52. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.skip_backend.rst +0 -0
  53. {uarray-0.9.3 → uarray-0.9.4}/docs/generated/uarray.wrap_single_convertor.rst +0 -0
  54. {uarray-0.9.3 → uarray-0.9.4}/docs/glossary.rst +0 -0
  55. {uarray-0.9.3 → uarray-0.9.4}/docs/gsoc/2020/ideas.rst +0 -0
  56. {uarray-0.9.3 → uarray-0.9.4}/docs/index.rst +0 -0
  57. {uarray-0.9.3 → uarray-0.9.4}/docs/libauthor_docs.rst +0 -0
  58. {uarray-0.9.3 → uarray-0.9.4}/docs/logo.png +0 -0
  59. {uarray-0.9.3 → uarray-0.9.4}/docs/multimethod_docs.rst +0 -0
  60. {uarray-0.9.3 → uarray-0.9.4}/notebooks/01_user_facing.ipynb +0 -0
  61. {uarray-0.9.3 → uarray-0.9.4}/notebooks/02_basic_dev_tutorial.ipynb +0 -0
  62. {uarray-0.9.3 → uarray-0.9.4}/notebooks/fruit-puzzle.jpg +0 -0
  63. {uarray-0.9.3 → uarray-0.9.4}/readthedocs.yml +0 -0
  64. {uarray-0.9.3 → uarray-0.9.4}/requirements/all.txt +0 -0
  65. {uarray-0.9.3 → uarray-0.9.4}/requirements/docs.txt +0 -0
  66. {uarray-0.9.3 → uarray-0.9.4}/requirements/optional.txt +0 -0
  67. {uarray-0.9.3 → uarray-0.9.4}/requirements/tests.txt +0 -0
  68. {uarray-0.9.3 → uarray-0.9.4}/requirements.txt +0 -0
  69. {uarray-0.9.3 → uarray-0.9.4}/src/small_dynamic_array.h +0 -0
  70. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/.coveragerc +0 -0
  71. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/_backend.py +0 -0
  72. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/_typing.pyi +0 -0
  73. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/_uarray.pyi +0 -0
  74. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/conftest.py +0 -0
  75. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/py.typed +0 -0
  76. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/pytest.ini +0 -0
  77. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/tests/__init__.py +0 -0
  78. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/tests/example_helpers.py +0 -0
  79. {uarray-0.9.3 → uarray-0.9.4}/src/uarray/tests/test_uarray.py +0 -0
@@ -16,20 +16,36 @@ on:
16
16
 
17
17
  jobs:
18
18
  build_wheels:
19
- name: Build wheels on ${{ matrix.os }}
19
+ name: Wheels ${{ matrix.os }} ${{ matrix.archs }}
20
20
  runs-on: ${{ matrix.os }}
21
21
  strategy:
22
22
  matrix:
23
- os: [ubuntu-latest, windows-latest, macos-latest]
23
+ os: [ubuntu-latest, windows-latest]
24
+ archs: [auto32, auto64]
25
+ include:
26
+ - os: macos-latest
27
+ archs: x86_64
28
+ - os: macos-latest
29
+ archs: arm64
30
+ fail-fast: false
24
31
 
25
32
  steps:
26
- - uses: actions/checkout@v5
33
+ - uses: actions/checkout@v6
27
34
  with:
28
35
  fetch-depth: 0
29
-
36
+ - name: Setup MSVC (win32)
37
+ if: ${{ matrix.os == 'windows-latest' && matrix.archs == 'auto32' }}
38
+ uses: bus1/cabuild/action/msdevshell@e22aba57d6e74891d059d66501b6b5aed8123c4d # v1
39
+ with:
40
+ architecture: 'x86'
41
+ - name: Remove unwanted linker (win32)
42
+ if: ${{ matrix.os == 'windows-latest' && matrix.archs == 'auto32' }}
43
+ run: rm "c:\Program Files\Git\usr\bin\link.exe"
30
44
  - name: Build wheels
31
- uses: pypa/cibuildwheel@v3.2.1
32
- - uses: actions/upload-artifact@v4
45
+ uses: pypa/cibuildwheel@v4.0.0
46
+ env:
47
+ CIBW_ARCHS: ${{ matrix.archs }}
48
+ - uses: actions/upload-artifact@v7
33
49
  with:
34
50
  name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
35
51
  path: ./wheelhouse/*.whl
@@ -38,14 +54,14 @@ jobs:
38
54
  name: Make SDist
39
55
  runs-on: ubuntu-latest
40
56
  steps:
41
- - uses: actions/checkout@v5
57
+ - uses: actions/checkout@v6
42
58
  with:
43
59
  fetch-depth: 0
44
60
 
45
61
  - name: Build SDist
46
62
  run: pipx run build --sdist
47
63
 
48
- - uses: actions/upload-artifact@v4
64
+ - uses: actions/upload-artifact@v7
49
65
  with:
50
66
  name: cibw-sdist
51
67
  path: dist/*.tar.gz
@@ -57,7 +73,7 @@ jobs:
57
73
  runs-on: ubuntu-latest
58
74
  if: github.ref_type == 'tag'
59
75
  steps:
60
- - uses: actions/download-artifact@v5
76
+ - uses: actions/download-artifact@v8
61
77
  with:
62
78
  pattern: cibw-*
63
79
  path: dist
@@ -69,7 +85,7 @@ jobs:
69
85
  name: Documentation, Linting and Coverage
70
86
  runs-on: ubuntu-latest
71
87
  steps:
72
- - uses: actions/checkout@v5
88
+ - uses: actions/checkout@v6
73
89
  with:
74
90
  fetch-depth: 0
75
91
  - uses: actions/setup-python@v6
@@ -84,7 +100,7 @@ jobs:
84
100
  run: |
85
101
  sphinx-build -W -b html docs/ _build/html
86
102
  - name: Upload documentation
87
- uses: actions/upload-artifact@v4
103
+ uses: actions/upload-artifact@v7
88
104
  with:
89
105
  name: Documentation
90
106
  path: _build/html
@@ -95,41 +111,25 @@ jobs:
95
111
  run: |
96
112
  mypy src/uarray
97
113
  - name: Run clang-format style check for C/C++ code.
98
- uses: jidicula/clang-format-action@v4.15.0
114
+ uses: jidicula/clang-format-action@v4.18.0
99
115
  with:
100
116
  clang-format-version: '19'
101
117
  check-path: 'src'
102
118
  - name: Upload coverage to Codecov
103
- uses: codecov/codecov-action@v5
119
+ uses: codecov/codecov-action@v7
104
120
  with:
105
121
  directory: 'coverage/coverage*.xml'
106
122
  env_vars: OS,PYTHON
107
123
  fail_ci_if_error: false
108
124
  verbose: true
109
125
 
110
- pypy3:
111
- name: Tests for PyPy3
112
- runs-on: ubuntu-latest
113
- steps:
114
- - uses: actions/checkout@v5
115
- with:
116
- fetch-depth: 0
117
- - uses: actions/setup-python@v6
118
- with:
119
- python-version: 'pypy-3.11'
120
- cache: 'pip'
121
- - name: Install package
122
- run: |
123
- pip install -v .[tests]
124
- - name: Run tests
125
- run: |
126
- pytest --pyargs uarray
127
-
128
126
  scipy_fft:
129
127
  name: Run SciPy FFT tests
130
128
  runs-on: ubuntu-latest
131
129
  steps:
132
- - uses: actions/checkout@v5
130
+ - uses: actions/checkout@v6
131
+ with:
132
+ fetch-depth: 0
133
133
  - uses: actions/setup-python@v6
134
134
  with:
135
135
  # Update according to NEP-29
@@ -23,9 +23,10 @@ sandbox.py
23
23
  *.so
24
24
  build/
25
25
  default.profraw
26
- src/uarray/_version.py
26
+ **/_version.py
27
27
  *.pyd
28
28
  # pixi environments
29
29
  .pixi
30
30
  *.egg-info
31
31
  wheelhouse/
32
+ **/.DS_Store
@@ -1,14 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: uarray
3
- Version: 0.9.3
3
+ Version: 0.9.4
4
4
  Summary: Array interface object for Python with pluggable backends and a multiple-dispatch mechanism for defining down-stream functions
5
- Maintainer-email: Hameer Abbasi <habbasi@openteams.com>
6
- License-Expression: BSD-3-Clause
7
- Project-URL: Documentation, https://uarray.org/
8
- Project-URL: Source, https://github.com/Quansight-Labs/uarray/
9
- Project-URL: Repository, https://github.com/Quansight-Labs/uarray.git
10
- Project-URL: Issue Tracker, https://github.com/Quansight-Labs/uarray/issues
11
5
  Keywords: uarray,scipy,multiple-dispatch
6
+ Maintainer-Email: Hameer Abbasi <habbasi@openteams.com>
7
+ License-Expression: BSD-3-Clause
8
+ License-File: LICENSE
12
9
  Classifier: Development Status :: 2 - Pre-Alpha
13
10
  Classifier: Operating System :: OS Independent
14
11
  Classifier: Programming Language :: Python
@@ -21,9 +18,11 @@ Classifier: Programming Language :: Python :: 3 :: Only
21
18
  Classifier: Intended Audience :: Developers
22
19
  Classifier: Intended Audience :: Science/Research
23
20
  Classifier: Typing :: Typed
21
+ Project-URL: Documentation, https://uarray.org/
22
+ Project-URL: Source, https://github.com/Quansight-Labs/uarray/
23
+ Project-URL: Repository, https://github.com/Quansight-Labs/uarray.git
24
+ Project-URL: Issue Tracker, https://github.com/Quansight-Labs/uarray/issues
24
25
  Requires-Python: >=3.11
25
- Description-Content-Type: text/markdown
26
- License-File: LICENSE
27
26
  Provides-Extra: docs
28
27
  Requires-Dist: sphinx; extra == "docs"
29
28
  Requires-Dist: sphinx_rtd_theme; extra == "docs"
@@ -37,7 +36,7 @@ Provides-Extra: all
37
36
  Requires-Dist: uarray[docs]; extra == "all"
38
37
  Requires-Dist: uarray[tests]; extra == "all"
39
38
  Requires-Dist: uarray[optional]; extra == "all"
40
- Dynamic: license-file
39
+ Description-Content-Type: text/markdown
41
40
 
42
41
  # `uarray` - A back-end mechanism geared towards array computing
43
42
 
@@ -0,0 +1,48 @@
1
+ project(
2
+ 'uarray',
3
+ 'cpp',
4
+ version: run_command(['tools/gitversion.py'], check: true).stdout().strip(),
5
+ license: 'BSD-3-Clause',
6
+ license_files: ['LICENSE'],
7
+ default_options: 'cpp_std=c++17',
8
+ )
9
+
10
+ fs = import('fs')
11
+ py = import('python').find_installation(pure: false)
12
+
13
+ # Sources variable definitions #
14
+
15
+ # NOTE: downstream projects may rely on these variable names when vendoring,
16
+ # do not change them without consulting with downstream projects
17
+ python_sources = {
18
+ 'uarray': files(
19
+ 'src/uarray/__init__.py',
20
+ 'src/uarray/_backend.py',
21
+ 'src/uarray/_typing.pyi',
22
+ 'src/uarray/_typing.pyi',
23
+ 'src/uarray/_version.pyi',
24
+ )
25
+ }
26
+
27
+ if fs.exists('src/uarray/_version.py')
28
+ python_sources = python_sources + {
29
+ 'uarray': python_sources['uarray'] + files('src/uarray/_version.py')
30
+ }
31
+ endif
32
+
33
+ cpp_sources = files('src/_uarray_dispatch.cxx')
34
+ include_dirs = include_directories('src')
35
+
36
+ # Installation
37
+
38
+ if not meson.is_subproject()
39
+ py.extension_module('_uarray',
40
+ cpp_sources,
41
+ cpp_args: meson.get_compiler('cpp').get_supported_arguments('-Wno-terminate'),
42
+ include_directories: include_dirs,
43
+ install: true,
44
+ subdir: 'uarray',
45
+ )
46
+ endif
47
+
48
+ subdir('src/uarray')