name: Python package on: [push] jobs: build: runs-on: ${{ matrix.os }} strategy: fail-fast: false max-parallel: 4 matrix: python-version: [3.7, 3.8] os: [ubuntu-latest, macOS-latest] steps: - uses: actions/checkout@v1 - name: Setup Python environment uses: actions/setup-python@v1.1.1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | brew update && brew install gmp boost openssl || echo "" sudo apt-get install libboost-all-dev || echo "" sudo apt-get install libssl-dev || echo "" sh install.sh - name: Lint source with flake8 run: | ./.venv/bin/flake8 src --exclude src/electron-ui/node_modules - name: Lint source with mypy run: | ./.venv/bin/mypy src tests - name: Install chiavdf from source if: matrix['python-version'] == '3.7' && startsWith(matrix.os, 'ubuntu') run: | source .venv/bin/activate pip install --force --no-binary chiavdf chiavdf==0.12.1 - name: Test blockchain code with pytest run: | ./.venv/bin/py.test tests -s -v