10
10
strategy :
11
11
matrix :
12
12
os : [ubuntu-latest]
13
- python : ['3.8 ', '3.9 ', '3.10 ', '3.11 ']
13
+ python : ['3.9 ', '3.10 ', '3.11 ', '3.12 ']
14
14
runs-on : ${{ matrix.os }}
15
15
16
16
steps :
@@ -35,21 +35,23 @@ jobs:
35
35
- name : Test with pytest
36
36
run : |
37
37
pytest -m "not spark"
38
-
38
+
39
39
test_spark :
40
40
strategy :
41
41
matrix :
42
42
include :
43
- # - SPARK_VERSION: "2.4.8"
44
- # HADOOP_VERSION: "2.7"
45
- # JAVA_VERSION: "8"
46
- # python: "3.7"
47
- # os: ubuntu-latest
48
43
- SPARK_VERSION : " 3.3.2"
49
44
HADOOP_VERSION : " 3"
50
45
JAVA_VERSION : " 11"
51
- python : " 3.8 "
46
+ python : " 3.9 "
52
47
os : ubuntu-latest
48
+ dependency_constraints : ' "pandas<2" "numpy<2"'
49
+ - SPARK_VERSION : " 3.5.4"
50
+ HADOOP_VERSION : " 3"
51
+ JAVA_VERSION : " 11"
52
+ python : " 3.12"
53
+ os : ubuntu-latest
54
+ dependency_constraints : ' "pandas>=2" "numpy>=2"'
53
55
runs-on : ${{ matrix.os }}
54
56
name : ${{ matrix.os }}, Spark ${{ matrix.SPARK_VERSION}}, Python ${{ matrix.python }}
55
57
67
69
/home/runner/work/spark.tgz
68
70
~/.cache/pip
69
71
key : ${{ runner.os }}-spark-${{ matrix.SPARK_VERSION }}-hadoop${{ matrix.HADOOP_VERSION }}-java${{ matrix.JAVA_VERSION }}-${{ hashFiles('**/pyproject.toml') }}
70
- - name : Install dependencies
72
+ - name : Install pip and setuptools
71
73
run : |
72
74
python -m pip install --upgrade pip setuptools
73
- pip install -e .[test]
74
75
- name : Download spark
75
76
if : steps.cache-spark.outputs.cache-hit != 'true'
76
77
env :
93
94
# https://github.com/python-poetry/poetry/issues/6792
94
95
pip3 install "pypandoc<1.8"
95
96
pip install "pyspark==${SPARK_VERSION}"
97
+ - name : Install Spark-related dependency versions
98
+ run : |
99
+ pip install ${{ matrix.dependency_constraints }}
100
+ - name : Install project dependencies
101
+ run : |
102
+ pip install -e .[test]
96
103
- name : Test with pytest (spark-specific)
97
104
env :
98
105
BUILD_DIR : " /home/runner/work/" # ${{ github.workspace }}
@@ -106,15 +113,15 @@ jobs:
106
113
107
114
examples :
108
115
runs-on : ubuntu-latest
109
- needs :
116
+ needs :
110
117
- test
111
118
- test_spark
112
119
steps :
113
120
- uses : actions/checkout@v2
114
- - name : Set up Python 3.8
121
+ - name : Set up Python 3.9
115
122
uses : actions/setup-python@v1
116
123
with :
117
- python-version : 3.8
124
+ python-version : 3.9
118
125
- name : Install dependencies
119
126
run : |
120
127
python -m pip install --upgrade pip
@@ -130,17 +137,17 @@ jobs:
130
137
python flight_delays.py
131
138
cd synthetic_data_streams
132
139
python hyperplane.py
133
- - uses : actions/upload-artifact@v2
140
+ - uses : actions/upload-artifact@v4
134
141
with :
135
142
name : synthetic-report
136
143
path : examples/test_data_report.html
137
144
if-no-files-found : error
138
- - uses : actions/upload-artifact@v2
145
+ - uses : actions/upload-artifact@v4
139
146
with :
140
147
name : flight-delays-report
141
148
path : examples/flight_delays_report.html
142
149
if-no-files-found : error
143
- - uses : actions/upload-artifact@v2
150
+ - uses : actions/upload-artifact@v4
144
151
with :
145
152
name : hyperplane-1-report
146
153
path : examples/synthetic_data_streams/reports/hyperplane_1.html
0 commit comments