@@ -5,7 +5,6 @@ permissions:
55 pull-requests : write
66
77jobs :
8-
98 test :
109 strategy :
1110 matrix :
@@ -17,54 +16,53 @@ jobs:
1716 runs-on : ${{ matrix.os }}
1817
1918 steps :
19+ - name : Install Go
20+ uses : actions/setup-go@v5
21+ with :
22+ go-version : ${{ matrix.go-version }}
23+ cache : false
24+
25+ - name : Install Python
26+ uses : actions/setup-python@v6
27+ with :
28+ python-version : ${{ matrix.python-version }}
29+
30+ - name : Checkout code
31+ uses : actions/checkout@v5
32+
33+ - name : Get dependencies
34+ run : |
35+ env GO111MODULE=on go vet ./...
36+ pip install coverage
37+
38+ - name : Build
39+ run : go build -v .
40+
41+ - name : Test on Windows
42+ env :
43+ CGO_ENABLED : 1
44+ if : matrix.os == 'windows-latest'
45+ run : go build -buildmode=c-shared -o libexcelize.amd64.windows.dll main.go && coverage run -m unittest
46+
47+ - name : Test on Linux
48+ env :
49+ CGO_ENABLED : 1
50+ if : matrix.os == 'ubuntu-24.04'
51+ run : go build -buildmode=c-shared -o libexcelize.amd64.linux.so main.go && coverage run -m unittest
52+
53+ - name : Test on macOS
54+ env :
55+ CGO_ENABLED : 1
56+ if : matrix.os == 'macos-latest'
57+ run : go build -buildmode=c-shared -o libexcelize.arm64.darwin.dylib main.go && coverage run -m unittest
2058
21- - name : Install Go
22- uses : actions/setup-go@v5
23- with :
24- go-version : ${{ matrix.go-version }}
25- cache : false
26-
27- - name : Install Python
28- uses : actions/setup-python@v5
29- with :
30- python-version : ${{ matrix.python-version }}
31-
32- - name : Checkout code
33- uses : actions/checkout@v4
34-
35- - name : Get dependencies
36- run : |
37- env GO111MODULE=on go vet ./...
38- pip install coverage
39-
40- - name : Build
41- run : go build -v .
42-
43- - name : Test on Windows
44- env :
45- CGO_ENABLED : 1
46- if : matrix.os == 'windows-latest'
47- run : go build -buildmode=c-shared -o libexcelize.amd64.windows.dll main.go && coverage run -m unittest
48-
49- - name : Test on Linux
50- env :
51- CGO_ENABLED : 1
52- if : matrix.os == 'ubuntu-24.04'
53- run : go build -buildmode=c-shared -o libexcelize.amd64.linux.so main.go && coverage run -m unittest
54-
55- - name : Test on macOS
56- env :
57- CGO_ENABLED : 1
58- if : matrix.os == 'macos-latest'
59- run : go build -buildmode=c-shared -o libexcelize.arm64.darwin.dylib main.go && coverage run -m unittest
60-
61- - name : Codecov
62- uses : codecov/codecov-action@v5
63- env :
64- CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
65- with :
66- flags : unittests
67- name : codecov-umbrella
59+ - name : Codecov
60+ uses : codecov/codecov-action@v5
61+ env :
62+ CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
63+ with :
64+ flags : unittests
65+ name : codecov-umbrella
6866
6967 build :
7068 runs-on : ${{ matrix.os }}
@@ -75,20 +73,19 @@ jobs:
7573 os : [ubuntu-24.04, macos-latest]
7674
7775 steps :
78-
7976 - name : Install Go
8077 uses : actions/setup-go@v5
8178 with :
82- go-version : 1.24 .x
79+ go-version : 1.25 .x
8380 cache : false
8481
8582 - name : Install Python
86- uses : actions/setup-python@v5
83+ uses : actions/setup-python@v6
8784 with :
8885 python-version : " 3.9"
8986
9087 - name : Checkout code
91- uses : actions/checkout@v4
88+ uses : actions/checkout@v5
9289
9390 - name : Get dependencies
9491 run : |
@@ -155,24 +152,24 @@ jobs:
155152
156153 if : github.event_name == 'release' && github.event.action == 'published'
157154 steps :
158- - name : Install Python
159- uses : actions/setup-python@v5
160- with :
161- python-version : " 3.9"
162-
163- - name : Checkout code
164- uses : actions/checkout@v4
165-
166- - name : Download Artifacts
167- uses : actions/download-artifact@v4
168- with :
169- merge-multiple : true
170- path : ./
171-
172- - name : Build Python Package
173- run : |
174- pip install build setuptools wheel
175- python -m build
176-
177- - name : Publish package distributions to PyPI
178- uses : pypa/gh-action-pypi-publish@release/v1
155+ - name : Install Python
156+ uses : actions/setup-python@v6
157+ with :
158+ python-version : " 3.9"
159+
160+ - name : Checkout code
161+ uses : actions/checkout@v5
162+
163+ - name : Download Artifacts
164+ uses : actions/download-artifact@v5
165+ with :
166+ merge-multiple : true
167+ path : ./
168+
169+ - name : Build Python Package
170+ run : |
171+ pip install build setuptools wheel
172+ python -m build
173+
174+ - name : Publish package distributions to PyPI
175+ uses : pypa/gh-action-pypi-publish@release/v1
0 commit comments