Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 3 additions & 47 deletions .github/workflows/python-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,73 +18,29 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version:
[
"3.5",
"3.6",
"3.7",
"3.8",
"3.9",
"3.10",
"3.11",
"3.12",
"3.13",
"3.14",
]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
os: [windows-latest, macos-latest, ubuntu-latest]
exclude: # Python < v3.8 does not support Apple Silicon ARM64.
- python-version: "3.5"
os: macos-latest
- python-version: "3.6"
os: macos-latest
- python-version: "3.7"
os: macos-latest
include: # So run those legacy versions on Intel CPUs.
- python-version: "3.5"
os: macos-13
- python-version: "3.6"
os: macos-13
- python-version: "3.7"
os: macos-13

steps:
- uses: actions/checkout@v5

- name: Run tests in Docker for legacy Python
if: matrix.os == 'ubuntu-latest' && contains(fromJSON('["3.5","3.6","3.7"]'), matrix.python-version)
run: |
docker run --rm -v ${{ github.workspace }}:/app -w /app python:${{ matrix.python-version }} bash -c "
pip install --upgrade pip &&
pip install pytest pytest-cov parameterized mock flake8 &&
pip install -r requirements.txt &&
flake8 configcatclient --count --show-source --statistics &&
pytest configcatclienttests
"

- name: Set up Python ${{ matrix.python-version }}
if: ${{ !(matrix.os == 'ubuntu-latest' && contains(fromJSON('["3.5","3.6","3.7"]'), matrix.python-version)) }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
env:
# Needed on Ubuntu for Python 3.5 build.
PIP_TRUSTED_HOST: "pypi.python.org pypi.org files.pythonhosted.org"

- name: Install dependencies
if: ${{ !(matrix.os == 'ubuntu-latest' && contains(fromJSON('["3.5","3.6","3.7"]'), matrix.python-version)) }}
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade pip
pip install pytest pytest-cov parameterized mock flake8
pip install -r requirements.txt

- name: Lint with flake8
if: ${{ !(matrix.os == 'ubuntu-latest' && contains(fromJSON('["3.5","3.6","3.7"]'), matrix.python-version)) }}
run: |
# Statical analysis
flake8 configcatclient --count --show-source --statistics

- name: Test
if: ${{ !(matrix.os == 'ubuntu-latest' && contains(fromJSON('["3.5","3.6","3.7"]'), matrix.python-version)) }}
run: pytest configcatclienttests

coverage:
Expand All @@ -100,7 +56,7 @@ jobs:

- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade pip
pip install pytest pytest-cov parameterized mock flake8
pip install -r requirements.txt

Expand Down
5 changes: 0 additions & 5 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,6 @@ def parse_requirements(filename):
'License :: OSI Approved :: MIT License',
'Operating System :: OS Independent',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
Expand Down
Loading