@@ -3,12 +3,12 @@ name: Test
33on : ['push', 'pull_request']
44
55jobs :
6- build :
6+ build-linux :
77 runs-on : ${{ matrix.os }}
88
99 strategy :
1010 matrix :
11- os : ['ubuntu-latest', 'ubuntu-24.04-arm', 'windows-latest', 'macos-latest' ]
11+ os : ['ubuntu-latest', 'ubuntu-24.04-arm']
1212 python-version : ['3.8', '3.9', '3.10', '3.11', '3.12', 'pypy3.9', 'pypy3.10']
1313
1414 steps :
@@ -55,9 +55,108 @@ jobs:
5555 python3 -m pip install .
5656 tldr --version
5757
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+
58157 build-snap :
59158 runs-on : ${{ matrix.os }}
60- needs : ['build']
159+ needs : ['build-linux ']
61160
62161 strategy :
63162 matrix :
0 commit comments