Skip to content

Release pyqt-reactive 0.3.15 #72

Release pyqt-reactive 0.3.15

Release pyqt-reactive 0.3.15 #72

Workflow file for this run

name: Publish to PyPI
on:
push:
tags:
- 'v*'
permissions:
contents: write
id-token: write # Required for trusted publishing
jobs:
build-and-publish:
name: Build and publish to PyPI
runs-on: ubuntu-latest
timeout-minutes: 20
env:
QT_QPA_PLATFORM: offscreen
environment:
name: pypi
url: https://pypi.org/p/pyqt-reactive
steps:
- name: Checkout code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: "3.12"
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xfixes0 x11-utils libegl1
- name: Install build dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --constraint requirements-ci.txt build "twine>=7,<8" -e ".[dev]"
- name: Test release candidate
run: python -m pytest -q -o faulthandler_timeout=120
- name: Build package
run: python -m build
- name: Validate immutable release declaration
uses: OpenHCSDev/python-introspect/.github/actions/validate-python-release@c29190a576054d16c0976a5be17e6a4112e324b8
- name: Check distribution
run: python -m twine check dist/*
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # v1.14.2
- name: Create GitHub Release
uses: softprops/action-gh-release@3d0d9888cb7fd7b750713d6e236d1fcb99157228 # v3.0.2
with:
files: dist/*
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}