1
0
mirror of https://github.com/arsenetar/send2trash.git synced 2025-08-29 20:29:40 +00:00
Andrew Senetar 9a2c5bc690
chore: Update project configuration and ci for python version changes
- Drop support for Python 2
- Drop support for Python 3.7, 3.8 is new minimum
- Update tox to include newer python version and drop old ones
- Update GitHub action for python version changes, use standard python
  setup action
- Update GitHub action to use pinned action versions
- Update version to 2.0.0-dev
2025-08-06 05:27:33 +00:00

71 lines
2.1 KiB
YAML

# Workflow lints, and checks format in parallel then runs tests on all platforms
name: Default CI/CD
on: push
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python 3.x
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.x
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8
- name: Lint with flake8
run: |
flake8 .
test:
needs: lint
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-latest
python-version: 3.13
- os: ubuntu-latest
python-version: 3.12
- os: ubuntu-latest
python-version: 3.11
- os: ubuntu-latest
python-version: "3.10"
- os: ubuntu-latest
python-version: 3.9
- os: ubuntu-latest
python-version: 3.8
# - os: macos-latest
# python-version: 3.13
# - os: macos-latest
# python-version: 3.8
- os: windows-latest
python-version: 3.13
- os: windows-latest
python-version: 3.8
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pytest
- name: Install windows dependencies
if: ${{ matrix.os == 'windows-latest' }}
run: |
pip install pywin32
- name: Install macOS dependencies
if: ${{ matrix.os == 'macos-latest' }}
run: |
pip install pyobjc-framework-Cocoa
- name: Run tests
run: |
pytest