Skip to content

Commit 7cc2534

Browse files
authored
Merge branch 'main' into all-contributors/add-NeilGirdhar
2 parents 5a64eaa + 25754cd commit 7cc2534

55 files changed

Lines changed: 20608 additions & 14904 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.all-contributorsrc

Lines changed: 114 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,10 @@
2727
"tool",
2828
"test",
2929
"bug",
30-
"platform"
30+
"platform",
31+
"review",
32+
"talk",
33+
"mentoring"
3134
]
3235
},
3336
{
@@ -37,7 +40,8 @@
3740
"profile": "https://github.com/mdhaber",
3841
"contributions": [
3942
"code",
40-
"ideas"
43+
"ideas",
44+
"test"
4145
]
4246
},
4347
{
@@ -47,7 +51,8 @@
4751
"profile": "https://github.com/j-bowhay",
4852
"contributions": [
4953
"code",
50-
"review"
54+
"review",
55+
"tool"
5156
]
5257
},
5358
{
@@ -100,7 +105,10 @@
100105
"tool",
101106
"test",
102107
"example",
103-
"bug"
108+
"bug",
109+
"ideas",
110+
"review",
111+
"maintenance"
104112
]
105113
},
106114
{
@@ -155,7 +163,10 @@
155163
"avatar_url": "https://avatars.githubusercontent.com/u/17495884?v=4",
156164
"profile": "https://github.com/OmarManzoor",
157165
"contributions": [
158-
"code"
166+
"code",
167+
"doc",
168+
"bug",
169+
"test"
159170
]
160171
},
161172
{
@@ -225,6 +236,104 @@
225236
"test",
226237
"review"
227238
]
239+
"test"
240+
]
241+
},
242+
{
243+
"login": "lithomas1",
244+
"name": "Thomas Li",
245+
"avatar_url": "https://avatars.githubusercontent.com/u/47963215?v=4",
246+
"profile": "https://github.com/lithomas1",
247+
"contributions": [
248+
"bug",
249+
"tool"
250+
]
251+
},
252+
{
253+
"login": "pearu",
254+
"name": "Pearu Peterson",
255+
"avatar_url": "https://avatars.githubusercontent.com/u/402156?v=4",
256+
"profile": "https://github.com/pearu",
257+
"contributions": [
258+
"review"
259+
]
260+
},
261+
{
262+
"login": "paddyroddy",
263+
"name": "Patrick J. Roddy",
264+
"avatar_url": "https://avatars.githubusercontent.com/u/15052188?v=4",
265+
"profile": "https://paddyroddy.github.io/",
266+
"contributions": [
267+
"code",
268+
"doc",
269+
"example",
270+
"test"
271+
]
272+
},
273+
{
274+
"login": "amacati",
275+
"name": "Martin Schuck",
276+
"avatar_url": "https://avatars.githubusercontent.com/u/57562633?v=4",
277+
"profile": "https://amacati.github.io/",
278+
"contributions": [
279+
"ideas"
280+
]
281+
},
282+
{
283+
"login": "Enderdead",
284+
"name": "Gauthier-Clerc François",
285+
"avatar_url": "https://avatars.githubusercontent.com/u/22777836?v=4",
286+
"profile": "https://github.com/Enderdead",
287+
"contributions": [
288+
"code",
289+
"test",
290+
"bug"
291+
]
292+
},
293+
{
294+
"login": "adriagarp",
295+
"name": "Adrián García Pitarch",
296+
"avatar_url": "https://avatars.githubusercontent.com/u/96059447?v=4",
297+
"profile": "https://github.com/adriagarp",
298+
"contributions": [
299+
"code",
300+
"test"
301+
]
302+
},
303+
{
304+
"login": "cakedev0",
305+
"name": "Arthur Lacote",
306+
"avatar_url": "https://avatars.githubusercontent.com/u/25986961?v=4",
307+
"profile": "https://github.com/cakedev0",
308+
"contributions": [
309+
"code",
310+
"doc",
311+
"ideas",
312+
"test"
313+
]
314+
},
315+
{
316+
"login": "steppi",
317+
"name": "Albert Steppi",
318+
"avatar_url": "https://avatars.githubusercontent.com/u/1953382?v=4",
319+
"profile": "http://steppi.github.io",
320+
"contributions": [
321+
"code",
322+
"ideas",
323+
"test"
324+
]
325+
},
326+
{
327+
"login": "prady0t",
328+
"name": "Pradyot Ranjan",
329+
"avatar_url": "https://avatars.githubusercontent.com/u/99216956?v=4",
330+
"profile": "https://github.com/prady0t",
331+
"contributions": [
332+
"code",
333+
"doc",
334+
"ideas",
335+
"test"
336+
]
228337
}
229338
]
230339
}

.dprint.jsonc

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
{
2+
"json": {
3+
"lineWidth": 100,
4+
"array.preferSingleLine": true,
5+
},
6+
"markdown": {
7+
"lineWidth": 200,
8+
"emphasisKind": "asterisks",
9+
},
10+
"toml": {
11+
"lineWidth": 100,
12+
},
13+
"yaml": {
14+
"printWidth": 100,
15+
"formatComments": true,
16+
"braceSpacing": false,
17+
},
18+
"excludes": ["**/*-lock.json", "**/*.lock", "**/node_modules/", "dist/"],
19+
"plugins": [
20+
"https://plugins.dprint.dev/g-plane/pretty_yaml-v0.5.1.wasm",
21+
"https://plugins.dprint.dev/json-0.20.0.wasm",
22+
"https://plugins.dprint.dev/markdown-0.19.0.wasm",
23+
"https://plugins.dprint.dev/toml-0.7.0.wasm",
24+
],
25+
}

.gitattributes

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,15 @@
1+
# Excluding files from an sdist generated by meson-python
2+
#########################################################
3+
4+
# Note: when adding to this list, be aware that you need to commit your changes
5+
# before they take effect (can be confusing during testing)
6+
7+
.github/* export-ignore
8+
.git* export-ignore
9+
codecov.yml export-ignore
10+
pixi.lock export-ignore
11+
RELEASING.md export-ignore
12+
renovate.json export-ignore
13+
114
# GitHub syntax highlighting
215
pixi.lock linguist-language=YAML linguist-generated=true

.github/dependabot.yml

Lines changed: 0 additions & 11 deletions
This file was deleted.

.github/pull_request_template.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<!--
2+
Thanks for contributing a pull request!
3+
4+
Please check out the contributor guidance at https://data-apis.org/array-api-extra/contributing.html.
5+
-->

.github/workflows/cd.yml

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
name: CD
22

3+
permissions:
4+
contents: read
5+
6+
concurrency:
7+
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
8+
cancel-in-progress: true
9+
310
on:
411
workflow_dispatch:
512
pull_request:
@@ -12,33 +19,36 @@ on:
1219

1320
jobs:
1421
dist:
22+
name: Create dist
1523
runs-on: ubuntu-latest
1624
steps:
17-
- uses: actions/checkout@v4
25+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1826
with:
1927
fetch-depth: 0
28+
persist-credentials: false
2029

21-
- uses: hynek/build-and-inspect-python-package@v2
30+
- uses: hynek/build-and-inspect-python-package@fe0a0fb1925ca263d076ca4f2c13e93a6e92a33e # v2.17.0
2231

2332
publish:
33+
name: Publish
2434
needs: [dist]
2535
environment: pypi
2636
permissions:
27-
id-token: write
28-
attestations: write
37+
id-token: write # for trusted publishing
38+
attestations: write # for trusted publishing
2939
contents: read
3040
runs-on: ubuntu-latest
3141
if: github.event_name == 'release' && github.event.action == 'published'
3242

3343
steps:
34-
- uses: actions/download-artifact@v4
44+
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
3545
with:
3646
name: Packages
3747
path: dist
3848

3949
- name: Generate artifact attestation for sdist and wheel
40-
uses: actions/attest-build-provenance@v2.2.0
50+
uses: actions/attest-build-provenance@a2bbfa25375fe432b6a289bc6b6cd05ecd0c4c32 # v4.1.0
4151
with:
4252
subject-path: "dist/*"
4353

44-
- uses: pypa/gh-action-pypi-publish@release/v1
54+
- uses: pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # v1.14.0

.github/workflows/ci.yml

Lines changed: 40 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
name: CI
22

3+
permissions:
4+
contents: read
5+
36
on:
47
workflow_dispatch:
58
pull_request:
@@ -17,55 +20,68 @@ env:
1720
FORCE_COLOR: 3
1821

1922
jobs:
20-
pre-commit-and-lint:
21-
name: Format
23+
lint:
24+
name: Lint
2225
runs-on: ubuntu-latest
2326
steps:
24-
- uses: actions/checkout@v4
27+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
2528
with:
2629
fetch-depth: 0
27-
- uses: actions/setup-python@v5
28-
with:
29-
python-version: "3.x"
30-
- uses: pre-commit/action@v3.0.1
31-
with:
32-
extra_args: --hook-stage manual --all-files
33-
- uses: prefix-dev/setup-pixi@v0.8.3
30+
persist-credentials: false
31+
32+
- uses: prefix-dev/setup-pixi@1b2de7f3351f171c8b4dfeb558c639cb58ed4ec0 # v0.9.5
3433
with:
35-
pixi-version: v0.40.3
34+
pixi-version: v0.68.0
3635
cache: true
3736
environments: lint
38-
- name: Run Pylint, Mypy & Pyright
39-
run: |
40-
pixi run -e lint pylint
41-
pixi run -e lint mypy
42-
pixi run -e lint pyright
37+
38+
- name: Lint (if this step fails, please 'pixi run lint' locally and push the changes)
39+
run: pixi run -e lint lint
4340

4441
checks:
45-
name: Check ${{ matrix.environment }}
42+
name: Test ${{ matrix.environment }}
4643
runs-on: ${{ matrix.runs-on }}
47-
needs: [pre-commit-and-lint]
4844
strategy:
4945
fail-fast: false
5046
matrix:
51-
environment: [tests-py310, tests-py313, tests-backends]
47+
environment:
48+
- tests-py311
49+
- tests-py314
50+
- tests-numpy1
51+
- tests-backends
52+
- tests-backends-py311
53+
- tests-nogil
5254
runs-on: [ubuntu-latest]
5355

56+
environment:
57+
name: ci-checks
58+
deployment: false
59+
5460
steps:
55-
- uses: actions/checkout@v4
61+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
5662
with:
5763
fetch-depth: 0
64+
persist-credentials: false
5865

59-
- uses: prefix-dev/setup-pixi@v0.8.3
66+
- uses: prefix-dev/setup-pixi@1b2de7f3351f171c8b4dfeb558c639cb58ed4ec0 # v0.9.5
6067
with:
61-
pixi-version: v0.40.3
68+
pixi-version: v0.68.0
6269
cache: true
6370
environments: ${{ matrix.environment }}
6471

6572
- name: Test package
66-
run: pixi run -e ${{ matrix.environment }} tests-ci
73+
# Save some time; also at the moment of writing coverage crashes on python 3.13t
74+
if: ${{ matrix.environment != 'tests-nogil' }}
75+
run: pixi run -e "${TASK_ENV}" tests-ci
76+
env:
77+
TASK_ENV: ${{ matrix.environment }}
78+
79+
- name: Test free-threading
80+
if: ${{ matrix.environment == 'tests-nogil' }}
81+
run: pixi run -e tests-nogil tests --parallel-threads=4
6782

6883
- name: Upload coverage report
69-
uses: codecov/codecov-action@v5.3.1
84+
if: ${{ matrix.environment != 'tests-nogil' }}
85+
uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0
7086
with:
7187
token: ${{ secrets.CODECOV_TOKEN }}

0 commit comments

Comments
 (0)