Skip to content

Commit 3a50fdf

Browse files
committed
MAINT: Bump minimum python to 3.10
1 parent 369b735 commit 3a50fdf

File tree

8 files changed

+27
-32
lines changed

8 files changed

+27
-32
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,11 +131,11 @@ regression. Currently only the single variable IV estimators are polished.
131131

132132
### Running
133133

134-
- Python 3.9+
134+
- Python 3.10+
135135
- NumPy (1.22+)
136136
- SciPy (1.8+)
137137
- pandas (1.4+)
138-
- statsmodels (0.12+)
138+
- statsmodels (0.13.1+)
139139
- formulaic (1.0.0+)
140140
- xarray (0.16+, optional)
141141
- Cython (3.0.10+, optional)

ci/azure_template_posix.yml

Lines changed: 15 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -16,49 +16,42 @@ jobs:
1616
vmImage: ${{ parameters.vmImage }}
1717
strategy:
1818
matrix:
19-
python39_minimums:
20-
python.version: '3.9'
19+
python310_minimums:
20+
python.version: '3.10'
2121
NUMPY: 1.22.3
2222
SCIPY: 1.8.0
2323
PANDAS: 1.3.0
24-
STATSMODELS: 0.12.0
24+
STATSMODELS: 0.13.1
2525
XARRAY: 0.21.0
26-
FORMULAIC: 0.6.5
26+
FORMULAIC: 1.0.2
2727
test.install: true
28-
python39_mid:
29-
python.version: '3.9'
28+
python310_mid:
29+
python.version: '3.10'
3030
NUMPY: 1.23.0
3131
SCIPY: 1.9.0
3232
PANDAS: 1.4.0
33-
STATSMODELS: 0.13.0
33+
STATSMODELS: 0.13.1
3434
XARRAY: 2022.6.0
3535
XXHASH: true
36-
FORMULAIC: 0.6.5
37-
test.install: true
38-
python39_recent:
39-
python.version: '3.9'
40-
NUMPY: 1.24.0
41-
SCIPY: 1.10.0
42-
PANDAS: 1.5.0
43-
STATSMODELS: 0.13.0
44-
XARRAY: 2022.12.0
45-
FORMULAIC: 0.6.5
36+
FORMULAIC: 1.0.2
4637
test.install: true
47-
python310_no_cython:
48-
python.version: '3.10'
49-
LM_NO_BINARY: 1
5038
python310_recent:
5139
python.version: '3.10'
5240
NUMPY: 1.24.0
5341
SCIPY: 1.12.0
5442
PANDAS: 2.0.0
5543
STATSMODELS: 0.14.0
5644
XARRAY: 2023.4.0
45+
FORMULAIC: 1.1.0
46+
test.install: true
5747
python310_latest:
5848
python.version: '3.10'
59-
FORMULAIC: 1.0.1
49+
FORMULAIC: 1.2.0
6050
XXHASH: true
6151
PYARROW: true
52+
python310_no_cython:
53+
python.version: '3.10'
54+
LM_NO_BINARY: 1
6255
python311_latest:
6356
python.version: '3.11'
6457
XXHASH: true
@@ -71,7 +64,7 @@ jobs:
7164
python.version: '3.13'
7265
XXHASH: true
7366
PYARROW: true
74-
python312_copy_on_write:
67+
python313_copy_on_write:
7568
python.version: '3.12'
7669
XXHASH: true
7770
LM_TEST_COPY_ON_WRITE: 1

ci/azure_template_windows.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@ jobs:
1616
vmImage: ${{ parameters.vmImage }}
1717
strategy:
1818
matrix:
19-
python39_win_latest:
20-
python.version: '3.9'
2119
python310_win_latest:
2220
python.version: '3.10'
2321
python311_win_latest:
@@ -45,7 +43,7 @@ jobs:
4543
python -m pip install -r requirements-dev.txt
4644
jupyter kernelspec list
4745
displayName: 'Install complete dependencies'
48-
condition: ne(variables['python.version'], '3.9')
46+
condition: ne(variables['python.version'], '3.10')
4947
5048
- script: |
5149
python -m pip list

linearmodels/asset_pricing/model.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44

55
from __future__ import annotations
66

7-
from typing import Any, Callable, cast
7+
from typing import Any, cast
8+
from collections.abc import Callable
89

910
from formulaic import model_matrix
1011
from formulaic.materializers.types import NAAction

linearmodels/iv/covariance.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44

55
from __future__ import annotations
66

7-
from typing import Any, Callable, Union, cast
7+
from typing import Any, Union, cast
8+
from collections.abc import Callable
89

910
from mypy_extensions import VarArg
1011
from numpy import (

linearmodels/iv/model.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44

55
from __future__ import annotations
66

7-
from typing import Any, Callable, TypeVar, Union, cast
7+
from typing import Any, TypeVar, Union, cast
8+
from collections.abc import Callable
89
import warnings
910

1011
from numpy import (

linearmodels/shared/utility.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
Sequence,
1111
ValuesView,
1212
)
13-
from typing import Any, Callable, Protocol, TypeVar, cast
13+
from typing import Any, Protocol, TypeVar, cast
14+
from collections.abc import Callable
1415

1516
import numpy as np
1617
import pandas

linearmodels/tests/iv/test_absorbing.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -597,7 +597,7 @@ def test_instrments():
597597

598598

599599
def assert_results_equal(
600-
o_res: OLSResults, a_res: AbsorbingLSResults, k: Optional[int] = None
600+
o_res: OLSResults, a_res: AbsorbingLSResults, k: int | None = None
601601
) -> None:
602602
if k is None:
603603
k = a_res.params.shape[0]

0 commit comments

Comments
 (0)