Skip to content

Commit 0168887

Browse files
committed
merged
2 parents d216f09 + 72a5141 commit 0168887

24 files changed

+5390
-53
lines changed

.github/workflows/ci.yml

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ jobs:
1717
- uses: actions/checkout@master
1818
- uses: actions/setup-python@master
1919
with:
20-
python-version: 3.12
21-
- run: pip install -r requirements-build-3_12.txt
20+
python-version: 3.13
21+
- run: pip install -r requirements-build-3_13.txt
2222
- run: python setup.py sdist
23-
- uses: actions/upload-artifact@v3
23+
- uses: actions/upload-artifact@v4
2424
with:
25-
name: dist
26-
path: dist
25+
name: dist-sdist
26+
path: dist/*
2727

2828
matrix_config:
2929
name: Matrix Runner Config
@@ -41,19 +41,22 @@ jobs:
4141
fi
4242
4343
wheels:
44-
name: Build / ${{ matrix.os }} / Python 3.${{ matrix.python.minor }}
44+
name: Build / ${{ matrix.os }} / Python 3.${{ matrix.python.minor }} / FT${{ matrix.python.ft }}
4545
needs: matrix_config
4646
strategy:
4747
fail-fast: false
4848
matrix:
4949
os: ${{ fromJson(needs.matrix_config.outputs.matrix_os) }}
5050
python:
51-
- {minor: 9, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt'}
52-
- {minor: 10, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt'}
53-
- {minor: 11, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt'}
54-
- {minor: 12, req_build: 'requirements-build-3_12.txt', req_test: 'requirements-dev-3_12.txt'}
51+
- {minor: 10, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt', ft: '0'}
52+
- {minor: 11, req_build: 'requirements-build-3_11.txt', req_test: 'requirements-dev-3_11.txt', ft: '0'}
53+
- {minor: 12, req_build: 'requirements-build-3_12.txt', req_test: 'requirements-dev-3_12.txt', ft: '0'}
54+
- {minor: 13, req_build: 'requirements-build-3_13.txt', req_test: 'requirements-dev-3_13.txt', ft: '0'}
55+
- {minor: 13t, req_build: 'requirements-build-3_13.txt', req_test: 'requirements-dev-3_13.txt', ft: '1'}
5556

5657
runs-on: ${{ matrix.os }}
58+
outputs:
59+
artifact_names: ${{ steps.record_artifacts.outputs.artifact_names }}
5760
steps:
5861
- uses: actions/checkout@master
5962
- uses: actions/setup-python@master
@@ -62,7 +65,7 @@ jobs:
6265
- run: echo '::add-matcher::.github/problem-matchers/msvc.json'
6366
if: startsWith(matrix.os, 'windows-')
6467

65-
- uses: pypa/cibuildwheel@v2.18.0
68+
- uses: pypa/cibuildwheel@v2.23.3
6669
if: matrix.os != 'macos-13-xlarge'
6770
with:
6871
output-dir: dist
@@ -73,10 +76,11 @@ jobs:
7376
CIBW_BEFORE_BUILD: pip install -r {project}/${{ matrix.python.req_build }}
7477
CIBW_BEFORE_TEST: pip install -r {project}/${{ matrix.python.req_test }}
7578
CIBW_TEST_COMMAND: pytest {project}/test
79+
CIBW_ENABLE: ${{ matrix.python.ft == '1' && 'cpython-freethreading' || '' }}
7680

7781
- run: pip install pipx
7882
if: matrix.os == 'macos-13-xlarge'
79-
- uses: pypa/cibuildwheel@v2.18.0
83+
- uses: pypa/cibuildwheel@v2.23.3
8084
if: matrix.os == 'macos-13-xlarge'
8185
with:
8286
output-dir: dist
@@ -85,23 +89,26 @@ jobs:
8589
CIBW_BEFORE_BUILD: pip install -r {project}/${{ matrix.python.req_build }}
8690
CIBW_BEFORE_TEST: pip install -r {project}/${{ matrix.python.req_test }}
8791
CIBW_TEST_COMMAND: pytest {project}/test
92+
CIBW_ENABLE: ${{ matrix.python.ft == '1' && 'cpython-freethreading' || '' }}
8893

89-
- uses: actions/upload-artifact@v3
94+
- uses: actions/upload-artifact@v4
9095
with:
91-
name: dist
92-
path: dist
96+
name: dist-wheels-${{ matrix.os }}-py3${{ matrix.python.minor }}-t${{ matrix.python.ft }} # Unique artifact name
97+
path: dist/*
9398

9499
upload:
95100
name: Publish
96101
if: github.event_name == 'release'
97102
needs: [tar_gz, wheels]
98103
runs-on: ubuntu-22.04
99104
steps:
100-
- uses: actions/download-artifact@v3
105+
- uses: actions/download-artifact@v4
101106
with:
102-
name: dist
107+
# leave out name to get all
103108
path: dist
104-
- uses: pypa/gh-action-pypi-publish@master
109+
merge-multiple: true
110+
111+
- uses: pypa/gh-action-pypi-publish@release/v1
105112
with:
106113
password: ${{ secrets.PYPI_TOKEN }}
107-
skip_existing: true
114+
skip-existing: true

README.rst

Lines changed: 78 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,94 @@ Code: https://github.com/InvestmentSystems/arraykit
2323
Packages: https://pypi.org/project/arraykit
2424

2525

26-
2726
Dependencies
2827
--------------
2928

3029
ArrayKit requires the following:
3130

32-
- Python>=3.9
33-
- numpy>=1.19.5
34-
31+
- Python>=3.10
32+
- numpy>=1.24.3
3533

3634

3735
What is New in ArrayKit
3836
-------------------------
3937

38+
39+
1.1.0-dev
40+
............
41+
42+
Now building free-threaded compatible wheels for Python 3.13.
43+
44+
45+
46+
1.0.9
47+
............
48+
49+
Updated types in ``pyi`` file.
50+
51+
52+
1.0.8
53+
............
54+
55+
NumPy ``datetime64`` scalar lookups in ``AutoMap`` and ``FrozenAutoMap`` explicitly require matching units.
56+
57+
58+
1.0.7
59+
............
60+
61+
Updated build configuration.
62+
63+
64+
1.0.6
65+
............
66+
67+
Updated build configuration.
68+
69+
70+
1.0.5
71+
............
72+
73+
Updated build configuration.
74+
75+
76+
1.0.4
77+
............
78+
79+
Updated build configuration.
80+
81+
82+
1.0.3
83+
............
84+
85+
Updated build configuration.
86+
87+
88+
1.0.2
89+
............
90+
91+
Updated build configuration.
92+
93+
94+
1.0.1
95+
............
96+
97+
Updated build configuration.
98+
99+
100+
1.0.0
101+
............
102+
103+
Integrated ``AutoMap`` and ``FrozenAutoMap`` from ``arraymap``.
104+
105+
Removed global integer cache from ``AutoMap`` and ``FrozenAutoMap`` for thread safety.
106+
107+
108+
0.10.0
109+
............
110+
111+
Now building wheels for Python 3.13.
112+
113+
40114
0.9.0
41115
............
42116

0 commit comments

Comments
 (0)