Skip to content

[PATCH] specialize exception hear (- WIP #154 -) #793

[PATCH] specialize exception hear (- WIP #154 -)

[PATCH] specialize exception hear (- WIP #154 -) #793

Workflow file for this run

name: CI
on: # yamllint disable-line rule:truthy
push:
branches:
- master
- stable
- HOTFIX-*
tags:
- v*
pull_request:
types:
- opened
- edited
- reopened
- synchronize
- ready_for_review
# Declare default permissions as none.
permissions: {}
jobs:
BUILD:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: github.repository == 'reactive-firewall/multicast'
runs-on: ubuntu-latest
defaults:
run:
shell: bash
env:
LANG: "en_US.UTF-8"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Pre-Clean
id: clean
run: make -j1 -f Makefile purge 2>/dev/null || true ;
- name: Test Build
id: build
run: make -j1 -f Makefile build ;
- name: Post-Clean
id: post
run: make -j1 -f Makefile purge || true ;
BOOTSTRAP:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ !cancelled() }}
needs: BUILD
runs-on: ubuntu-latest
defaults:
run:
shell: bash
timeout-minutes: 5
continue-on-error: ${{ matrix.experimental }}
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11", "3.12"]
lang-var: ["de.utf-8", "jp.utf-8"]
experimental: [true]
include:
- python-version: "3.10"
lang-var: "de.utf-8"
experimental: false
- python-version: "3.10"
lang-var: "jp.utf-8"
experimental: false
- python-version: "3.10"
lang-var: "en_US.utf-8"
experimental: false
- python-version: "3.11"
lang-var: "en_US.utf-8"
experimental: false
- python-version: "3.11"
lang-var: "en_US.utf-8"
experimental: false
- python-version: "3.12"
lang-var: "en_US.utf-8"
experimental: false
env:
PYTHON_VERSION: ${{ matrix.python-version }}
LANG: ${{ matrix.lang-var }}
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Set up dependencies
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1";
pip install -r ./requirements.txt ;
- name: Pre-build
id: bootstrap
run: |
make -j1 -f Makefile clean || true ;
make -j1 -f Makefile build ;
shell: bash
- name: Summerize Building
id: sumerize-py-build
run: |
echo "- Building works on python version ${{ matrix.python-version }}" >> $GITHUB_STEP_SUMMARY
if: ${{ success() }}
shell: bash
- name: Run Tests
id: test-install
run: make -j1 -f Makefile user-install ;
shell: bash
- name: Summerize Install
id: sumerize-user-install
run: |
echo "- User Installing works on python version ${{ matrix.python-version }}" >> $GITHUB_STEP_SUMMARY
if: ${{ success() }}
shell: bash
- name: Test Info
id: test-info
run: python -m setup --name --version --license || true ;
- name: Post-Clean
id: post
run: |
make -j1 -f Makefile purge || true ;
make -j1 -f Makefile clean || true ;
if: ${{ always() }}
shell: bash
MATS:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ !cancelled() }}
needs: BUILD
runs-on: ubuntu-latest
defaults:
run:
shell: bash
timeout-minutes: 8
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12"]
env:
PYTHON_VERSION: ${{ matrix.python-version }}
LANG: "en_US.utf-8"
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies for ${{ matrix.python-version }}
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1";
pip install -r ./requirements.txt ;
pip install -r ./tests/requirements.txt || true ;
pip install --upgrade -r ./docs/requirements.txt || true ;
- name: Pre-Clean
id: clean
run: make -j1 -f Makefile clean || true ;
- name: Run Tests for python ${{ matrix.python-version }}
id: tests
run: make -j1 -f Makefile test ;
- name: Summerize MATs for python ${{ matrix.python-version }}
id: sumerize-mats
run: |
echo "- MATS works on python version ${{ matrix.python-version }}" >> $GITHUB_STEP_SUMMARY
if: ${{ success() }}
- name: Post-Clean
id: post
run: make -j1 -f Makefile clean || true ;
if: ${{ always() }}
COVERAGE:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ success() }}
needs: [BUILD, MATS]
runs-on: ${{ matrix.os }}
timeout-minutes: 10
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.10", "3.11", "3.12", "3.13"]
env:
OS: ${{ matrix.os }}
PYTHON_VERSION: ${{ matrix.python-version }}
LANG: "en_US.utf-8"
COVERAGE_RCFILE: ./.coveragerc
COV_CORE_SOURCE: ./
COV_CORE_CONFIG: ./.coveragerc
COV_CORE_DATAFILE: ./coverage.xml
CODECLIMATE_REPO_TOKEN: ${{ secrets.CODECLIMATE_TOKEN }}
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
DEEPSOURCE_DSN: ${{ secrets.DEEPSOURCE_DSN }}
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Fix braindead windows ${{ matrix.python-version }} on ${{ matrix.os }}
if: ${{ !cancelled() && runner.os == 'Windows' }}
run: python -m pip install --upgrade pip
- name: Install dependencies for python ${{ matrix.python-version }} on ${{ matrix.os }}
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1";
pip install --upgrade -r ./requirements.txt ;
pip install --upgrade -r ./tests/requirements.txt || true ;
pip install --upgrade -r ./docs/requirements.txt || true ;
- name: Install code-climate tools for ${{ matrix.python-version }} on ${{ matrix.os }}
if: ${{ !cancelled() && runner.os == 'Linux' }}
shell: bash
run: |
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter || true ;
chmod +x ./cc-test-reporter 2>/dev/null || true ;
./cc-test-reporter before-build || true ;
- name: Install deepsource tools for ${{ matrix.python-version }} on ${{ matrix.os }}
if: ${{ !cancelled() && runner.os == 'Linux' }}
shell: bash
run: |
(curl https://deepsource.io/cli | sh) || true ;
- name: Pre-Clean
id: clean
run: make -j1 -f Makefile clean || true ;
- name: Generate Coverage for py${{ matrix.python-version }} on ${{ matrix.os }}
run: make -f Makefile test-pytest >> $GITHUB_STEP_SUMMARY ;
- name: Upload Python ${{ matrix.python-version }} coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
directory: .
flags: multicast,${{ matrix.os }},${{ matrix.python-version }}
name: multicast-github-${{ matrix.os }}-${{ matrix.python-version }}
verbose: true
fail_ci_if_error: false
- name: Upload Python ${{ matrix.python-version }} Artifact
uses: actions/upload-artifact@v4
with:
name: Test-Report-${{ matrix.os }}-${{ matrix.python-version }}
path: ./test-reports/
if-no-files-found: ignore
- name: code-climate for ${{ matrix.python-version }} on ${{ matrix.os }}
if: ${{ !cancelled() && runner.os == 'Linux' }}
shell: bash
run: |
./cc-test-reporter after-build --exit-code 0 || true ;
- name: deepsource for ${{ matrix.python-version }} on ${{ matrix.os }}
if: ${{ !cancelled() && runner.os == 'Linux' }}
shell: bash
run: |
./bin/deepsource report --analyzer test-coverage --key python --value-file ./coverage.xml 2>/dev/null || true ;
- name: Post-Clean
id: post
run: make -j1 -f Makefile clean || true ;
if: ${{ always() }}
STYLE:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ success() }}
needs: [BUILD, MATS]
runs-on: ubuntu-latest
defaults:
run:
shell: bash
timeout-minutes: 10
env:
PYTHON_VERSION: '3.13'
LANG: "en_US.utf-8"
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install dependencies for python Linters
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.2";
pip install --upgrade -r ./requirements.txt ;
pip install --upgrade -r ./tests/requirements.txt || true ;
pip install --upgrade -r ./docs/requirements.txt || true ;
- name: Pre-Clean
id: clean
run: make -j1 -f Makefile clean || true ;
- name: Testing Style
id: style
run: make -j1 -f Makefile test-style >> $GITHUB_STEP_SUMMARY ;
shell: bash
- name: Post-Clean
id: post
run: make -j1 -f Makefile clean || true ;
if: ${{ always() }}
INTEGRATION:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ success() }}
needs: [MATS, COVERAGE]
runs-on: ${{ matrix.os }}
timeout-minutes: 10
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ["3.10", "3.11", "3.12", "3.13"]
env:
OS: ${{ matrix.os }}
PYTHON_VERSION: ${{ matrix.python-version }}
LANG: "en_US.utf-8"
LC_CTYPE: "en_US.utf-8"
COVERAGE_RCFILE: ./.coveragerc
COV_CORE_SOURCE: ./
COV_CORE_CONFIG: ./.coveragerc
COV_CORE_DATAFILE: .coverage
CODECLIMATE_REPO_TOKEN: ${{ secrets.CODECLIMATE_TOKEN }}
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies for python ${{ matrix.python-version }} on ${{ matrix.os }}
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1";
pip install --upgrade -r ./requirements.txt ;
pip install --upgrade -r ./tests/requirements.txt || true ;
pip install --upgrade -r ./docs/requirements.txt || true ;
- name: Install Darwin code-climate tools for ${{ matrix.python-version }}
if: ${{ !cancelled() && runner.os != 'Linux' }}
run: |
if [ "$OS" == "macos-latest" ] ; then curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-darwin-amd64 > ./cc-test-reporter || true ; fi ;
if [ "$OS" == "macos-latest" ] ; then chmod +x ./cc-test-reporter 2>/dev/null || true ; fi
if [ "$OS" == "macos-latest" ] ; then ./cc-test-reporter before-build || true ; fi
shell: bash
- name: Install Linux code-climate tools for ${{ matrix.python-version }}
if: ${{ !cancelled() && runner.os == 'Linux' }}
run: |
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter || curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-arm64 > ./cc-test-reporter || true ;
chmod +x ./cc-test-reporter 2>/dev/null || true ;
./cc-test-reporter before-build || true ;
- name: Pre-Clean
id: clean-prep
run: make -j1 -f Makefile clean ;
- name: Pre-build for Python ${{ matrix.python-version }} on ${{ matrix.os }}
run: make -j1 -f Makefile build ;
if: ${{ success() }}
- name: Pre-install for Python ${{ matrix.python-version }} on ${{ matrix.os }}
run: make -j1 -f Makefile user-install || true ;
if: ${{ success() }}
- name: Re-Generate Coverage for py${{ matrix.python-version }} on ${{ matrix.os }}
run: |
make -j1 -f Makefile test-pytest ;
cp -vf ./coverage.xml ./test-reports/coverage.xml || true ;
shell: bash
- name: Generate Extra Coverage for py${{ matrix.python-version }} on ${{ matrix.os }}
run: |
hash -p ./.github/tool_shlock_helper.sh shlock ;
./tests/check_integration_coverage || echo "::warning file=tests/check_integration_coverage,line=1,endLine=1,title=SKIPPED::SKIP Integration Tests." ;
shell: bash
- name: Upload Python ${{ matrix.python-version }} integration coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./test-reports/coverage_supplement.xml
directory: .
flags: multicast,${{ matrix.os }},${{ matrix.python-version }}
name: multicast-github-${{ matrix.os }}-${{ matrix.python-version }}
verbose: true
fail_ci_if_error: false
- name: Upload Extra Python ${{ matrix.python-version }} Artifact
uses: actions/upload-artifact@v4
with:
name: Integration-Test-Report-${{ matrix.os }}-${{ matrix.python-version }}
path: ./test-reports/
if-no-files-found: ignore
- name: code-climate for ${{ matrix.python-version }}
if: ${{ !cancelled() && runner.os != 'Linux' }}
run: |
if [ "$OS" == "macos-latest" ] ; then ./cc-test-reporter after-build --exit-code 0 || true ; else echo "::warning file=.github/workflows/Tests.yml,line=459,endLine=459,title=SKIPPED::SKIP Code-Climate" ; fi ;
- name: code-climate for ${{ matrix.python-version }}
if: ${{ !cancelled() && runner.os == 'Linux' }}
run: |
./cc-test-reporter after-build --exit-code 0 || true ;
- name: Upload Python ${{ matrix.python-version }} integration test results to Codecov
if: ${{ !cancelled() }}
uses: codecov/test-results-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./test-reports/junit.xml
directory: .
flags: multicast,${{ matrix.os }},${{ matrix.python-version }}
name: multicast-github-${{ matrix.os }}-${{ matrix.python-version }}-test-results
verbose: true
fail_ci_if_error: false
- name: Post-purge
id: post-uninstall
run: make -j1 -f Makefile purge || true ;
if: ${{ !cancelled() }}
- name: Post-Clean
id: post-end
run: make -j1 -f Makefile clean || true ;
if: ${{ !cancelled() }}
EXTRAS-FOR-SETUP:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ success() }}
needs: [BOOTSTRAP, MATS]
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
timeout-minutes: 10
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ["3.10", "3.11", "3.12", "3.13"]
env:
OS: ${{ matrix.os }}
PYTHON_VERSION: ${{ matrix.python-version }}
LANG: "en_US.utf-8"
LC_CTYPE: "en_US.utf-8"
COVERAGE_RCFILE: ./.coveragerc
COV_CORE_SOURCE: ./
COV_CORE_CONFIG: ./.coveragerc
COV_CORE_DATAFILE: .coverage
CODECLIMATE_REPO_TOKEN: ${{ secrets.CODECLIMATE_TOKEN }}
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies for python ${{ matrix.python-version }} on ${{ matrix.os }}
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1";
pip install -r ./requirements.txt ;
pip install -r ./tests/requirements.txt || true ;
- name: Pre-Clean
id: clean-prep
run: make -j1 -f Makefile clean ;
- name: Pre-build for Python ${{ matrix.python-version }} on ${{ matrix.os }}
run: make -j1 -f Makefile build ;
if: ${{ success() }}
- name: Pre-install for Python ${{ matrix.python-version }} on ${{ matrix.os }}
run: make -j1 -f Makefile user-install || true ;
if: ${{ success() }}
- name: Generate Extra Legacy Setup Coverage for py${{ matrix.python-version }} on ${{ matrix.os }}
run: |
hash -p ./.github/tool_shlock_helper.sh shlock ;
./tests/check_legacy_setup_coverage || echo "::warning file=tests/check_legacy_setup_coverage,line=1,endLine=1,title=SKIPPED::SKIP Legacy Setup.py Tests." ;
if: ${{ !cancelled() }}
- name: Upload Python ${{ matrix.python-version }} Legacy Setup.py coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./test-reports/coverage_setup.xml
directory: .
flags: multicast,${{ matrix.os }},${{ matrix.python-version }}
name: multicast-github-${{ matrix.os }}-${{ matrix.python-version }}
verbose: true
fail_ci_if_error: false
- name: Upload Extra Python ${{ matrix.python-version }} Artifact
uses: actions/upload-artifact@v4
with:
name: Legacy_Setup-Test-Report-${{ matrix.os }}-${{ matrix.python-version }}
path: ./test-reports/
if-no-files-found: ignore
- name: Post-purge
id: post-uninstall
run: make -j1 -f Makefile purge || true ;
if: ${{ !cancelled() }}
- name: Post-Clean
id: post-end
run: make -j1 -f Makefile clean || true ;
if: ${{ !cancelled() }}
EXTRAS-FOR-PIP:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ !cancelled() }}
needs: [BOOTSTRAP, MATS]
runs-on: ubuntu-latest
defaults:
run:
shell: bash
timeout-minutes: 10
strategy:
matrix:
os: [ubuntu-latest]
python-version: ["3.10", "3.11", "3.12", "3.13"]
env:
OS: 'ubuntu-latest'
PYTHON_VERSION: ${{ matrix.python-version }}
LANG: "en_US.utf-8"
LC_CTYPE: "en_US.utf-8"
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies for python ${{ matrix.python-version }}
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1" "pip-licenses>=5.0.0";
pip install -r ./requirements.txt ;
pip install -r ./tests/requirements.txt || true ;
pip install --upgrade -r ./docs/requirements.txt || true ;
- name: Pre-Clean
id: clean-prep
run: make -j1 -f Makefile clean ;
- name: Test Dependencies with py${{ matrix.python-version }}
run: |
hash -p ./.github/tool_shlock_helper.sh shlock ; export TMPDIR=./ ;
./tests/check_pip ;
shell: bash
if: ${{ !cancelled() }}
- name: Post-purge
id: post-uninstall
run: make -j1 -f Makefile purge || true ;
if: ${{ !cancelled() }}
- name: Post-Clean
id: post-end
run: make -j1 -f Makefile clean || true ;
if: ${{ !cancelled() }}
DOCS:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ !cancelled() }}
needs: [MATS, COVERAGE, EXTRAS-FOR-SETUP, EXTRAS-FOR-PIP]
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
timeout-minutes: 10
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.10", "3.11", "3.12"]
env:
OS: ${{ matrix.os }}
PYTHON_VERSION: ${{ matrix.python-version }}
LANG: "en_US.utf-8"
LC_CTYPE: "en_US.utf-8"
DOCS_BUILD_REF: ${{ github.sha }}
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Fix braindead windows ${{ matrix.python-version }} on ${{ matrix.os }}
if: ${{ !cancelled() && runner.os == 'Windows' }}
run: python -m pip install --upgrade pip
- name: Install dependencies for python ${{ matrix.python-version }} on ${{ matrix.os }}
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1";
pip install -r ./requirements.txt ;
pip install -r ./tests/requirements.txt || true ;
- name: Pre-Clean
id: clean-prep
run: make -j1 -f Makefile clean ;
- name: Pre-build for Python ${{ matrix.python-version }} on ${{ matrix.os }}
run: make -j1 -f Makefile build ;
if: ${{ success() }}
- name: Generate documentation with py${{ matrix.python-version }} on ${{ matrix.os }}
run: make -j1 -f Makefile build-docs 2>&1 >> $GITHUB_STEP_SUMMARY ;
if: ${{ !cancelled() }}
- name: Lint documentation
run: |
pip install --upgrade sphinx-lint
sphinx-lint docs/ 2>&1 >> $GITHUB_STEP_SUMMARY || true ;
if: ${{ !cancelled() }}
- name: Upload Docs Artifact with Python ${{ matrix.python-version }} on ${{ matrix.os }}
uses: actions/upload-artifact@v4
with:
name: Multicast-Documentation-${{ env.GITHUB_SHA }}-${{ matrix.os }}-${{ matrix.python-version }}
path: ./docs/www/
if-no-files-found: ignore
- name: Post-purge
id: post-uninstall
run: make -j1 -f Makefile purge || true ;
if: ${{ !cancelled() }}
- name: Post-Clean
id: post-end
run: make -j1 -f Makefile clean || true ;
if: ${{ !cancelled() }}
TOX:
permissions:
actions: read
contents: read
statuses: write
packages: none
pull-requests: read
security-events: none
if: ${{ success() }}
needs: [MATS, STYLE, COVERAGE, INTEGRATION, DOCS]
runs-on: ubuntu-latest
timeout-minutes: 30
env:
OS: 'ubuntu-latest'
PYTHON_VERSION: '3.12'
LANG: 'en_US.utf-8'
CODECLIMATE_REPO_TOKEN: ${{ secrets.CODECLIMATE_TOKEN }}
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Prep Testing Tox
id: prep-tox
run: |
if [ "$OS" == "ubuntu-latest" ] ; then { apt-get update || true ;} ; wait ; { apt-get install --assume-yes python3.10 python3.11 || echo "::warning file=.github/workflows/Tests.yml,line=621,endLine=624,title=SKIPPED::SKIP Enhanced TOX Tests." ;} ; wait ; fi
- name: Install dependencies for Tox
run: |
pip install --upgrade "pip>=22.0" "setuptools>=75.0" "wheel>=0.44" "build>=1.2.1";
pip install --upgrade -r ./requirements.txt ;
pip install --upgrade -r ./tests/requirements.txt || true ;
pip install --upgrade -r ./docs/requirements.txt || true ;
- name: Pre-Clean
id: clean
run: make -j1 -f Makefile clean || true ;
- name: Testing Tox
run: make -j1 -f Makefile test-tox || true ;
- name: Post-Clean
id: post
run: make -j1 -f Makefile clean || true ;
if: ${{ !cancelled() }}