library: compat with pydantic v1&v2 #539
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: [push, pull_request] | |
jobs: | |
test: | |
env: | |
TEST_ENV: travis | |
# FeelUOwn have Chinese characters in feeluown help message. | |
# It needs an encoding which can encode Chinese character | |
# while windows use cp1252 as the default encoding. | |
PYTHONIOENCODING: utf-8 | |
runs-on: ${{ matrix.os }} | |
strategy: | |
# Allow some jobs fail. | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
python: ['3.8', '3.10', '3.11'] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Install Ubuntu dependencies | |
if: startsWith(matrix.os, 'ubuntu') | |
run: | | |
sudo apt-get update | |
sudo apt-get -y install libmpv1 | |
- name: Install macOS Dependencies | |
if: startsWith(matrix.os, 'macos') | |
run: | | |
brew install mpv | |
- name: Install Windows Dependencies | |
if: startsWith(matrix.os, 'windows') | |
run: | | |
choco install make curl | |
curl -L https://github.com/feeluown/FeelUOwn/releases/download/v3.6a0/mpv-1.dll -o C:Windows\system32\mpv-1.dll | |
- name: Install Python Dependencies | |
run: | | |
pip install --upgrade pip | |
pip install pyqt5 | |
pip install "pytest<7.2" | |
pip install -e .[dev] | |
- name: Install Python(macOS) Dependencies | |
if: startsWith(matrix.os, 'macos') | |
run: | | |
pip install -e .[macos] | |
- name: Install Python(windows) Dependencies | |
if: startsWith(matrix.os, 'windows') | |
run: | | |
pip install -e .[win32] | |
- name: Test if no syntax error | |
run: feeluown -h | |
- name: Test | |
run: | | |
make test | |
- name: Integration Test | |
run: | | |
make integration_test | |
- name: Coveralls | |
if: matrix.os == 'ubuntu-latest' && matrix.python == '3.8' && github.repository == 'feeluown/FeelUOwn' | |
env: | |
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
pip install coveralls | |
coveralls --service=github |