@@ -3,12 +3,12 @@ name: Test
3
3
on : ['push', 'pull_request']
4
4
5
5
jobs :
6
- build :
6
+ build-linux :
7
7
runs-on : ${{ matrix.os }}
8
8
9
9
strategy :
10
10
matrix :
11
- os : ['ubuntu-latest', 'ubuntu-24.04-arm', 'windows-latest', 'macos-latest' ]
11
+ os : ['ubuntu-latest', 'ubuntu-24.04-arm']
12
12
python-version : ['3.8', '3.9', '3.10', '3.11', '3.12', 'pypy3.9', 'pypy3.10']
13
13
14
14
steps :
@@ -55,9 +55,108 @@ jobs:
55
55
python3 -m pip install .
56
56
tldr --version
57
57
58
+ build-macos :
59
+ runs-on : macos-latest
60
+
61
+ strategy :
62
+ matrix :
63
+ python-version : ['3.8', '3.9', '3.10', '3.11', '3.12', 'pypy3.9', 'pypy3.10']
64
+
65
+ steps :
66
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
67
+
68
+ - name : Set up Python ${{ matrix.python-version }}
69
+ uses : actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0
70
+ with :
71
+ python-version : ${{ matrix.python-version }}
72
+
73
+ - name : Install developer dependencies
74
+ run : |
75
+ python3 -m pip install -U pip setuptools
76
+ python3 -m pip install -U pytest pytest-runner flake8
77
+
78
+ - name : Install sphinx dependencies
79
+ run : |
80
+ brew install sphinx-doc
81
+ brew link sphinx-doc --force
82
+
83
+ - name : Install tldr dependencies
84
+ run : >-
85
+ python3 -m
86
+ pip install
87
+ -r
88
+ requirements.txt
89
+ --user
90
+
91
+ - name : Generate the manpage
92
+ working-directory : docs
93
+ run : make man
94
+
95
+ - name : Lint codebase
96
+ run : python3 -m flake8
97
+
98
+ - name : Run test suite
99
+ run : python3 -m pytest tests/
100
+
101
+ - name : Test tldr cli
102
+ run : |
103
+ python3 -m pip install .
104
+ tldr --version
105
+
106
+ build-windows :
107
+ runs-on : windows-latest
108
+
109
+ strategy :
110
+ matrix :
111
+ python-version : ['3.8', '3.9', '3.10', '3.11', '3.12', 'pypy3.9', 'pypy3.10']
112
+
113
+ steps :
114
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
115
+
116
+ - name : Set up Python ${{ matrix.python-version }}
117
+ uses : actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0
118
+ with :
119
+ python-version : ${{ matrix.python-version }}
120
+
121
+ - name : Install developer dependencies
122
+ run : |
123
+ python3 -m pip install -U pip setuptools
124
+ python3 -m pip install -U pytest pytest-runner flake8
125
+
126
+ - name : Install sphinx dependencies
127
+ run : >-
128
+ python -m
129
+ pip install
130
+ sphinx
131
+ sphinx-argparse
132
+ --user
133
+
134
+ - name : Install tldr dependencies
135
+ run : >-
136
+ python3 -m
137
+ pip install
138
+ -r
139
+ requirements.txt
140
+ --user
141
+
142
+ - name : Generate the manpage
143
+ working-directory : docs
144
+ run : make man
145
+
146
+ - name : Lint codebase
147
+ run : python3 -m flake8
148
+
149
+ - name : Run test suite
150
+ run : python3 -m pytest tests/
151
+
152
+ - name : Test tldr cli
153
+ run : |
154
+ python3 -m pip install .
155
+ tldr --version
156
+
58
157
build-snap :
59
158
runs-on : ${{ matrix.os }}
60
- needs : ['build']
159
+ needs : ['build-linux ']
61
160
62
161
strategy :
63
162
matrix :
0 commit comments