Skip to content

Commit 1303fb5

Browse files
authored
Merge branch 'main' into flake8-pytest-style
2 parents 8d5c890 + 584eb08 commit 1303fb5

File tree

4 files changed

+95
-6
lines changed

4 files changed

+95
-6
lines changed

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ version: 2
77

88
workflows:
99
version: 2
10-
build:
10+
docs-build:
1111
jobs:
1212
- docs-build
1313
- docs-build-deploy:

.github/workflows/release.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
name: Build & Publish Wheels + Source
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
permissions:
8+
contents: read
9+
10+
jobs:
11+
build_wheels:
12+
name: Build wheels on ${{ matrix.os }}
13+
runs-on: ${{ matrix.os }}
14+
15+
strategy:
16+
fail-fast: false
17+
matrix:
18+
os: [ubuntu-latest, windows-latest, macos-latest]
19+
20+
steps:
21+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
22+
23+
- name: Set up Python 3.13
24+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
25+
with:
26+
python-version: "3.13"
27+
cache: "pip"
28+
29+
- name: Install uv
30+
uses: install-pinned/uv@b9511b633710c8bbe8ba48376771dba624746799 # 0.4.12
31+
32+
- name: Install dependencies
33+
run: |
34+
uv pip install --system -r requirements-dev.txt
35+
uv pip install --system -e .[all]
36+
37+
- name: Check setup.py
38+
run: |
39+
python setup.py check
40+
41+
- name: Build src dist
42+
if: ${{ matrix.os == 'ubuntu-latest' }}
43+
run: |
44+
python -m build --sdist --outdir wheels parsons
45+
46+
- name: Build wheels
47+
run: git pull && python -m cibuildwheel parsons/ --output-dir wheels
48+
49+
# Save wheels as artifacts
50+
- name: Upload built wheels
51+
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
52+
with:
53+
name: wheels-${{ matrix.os }}
54+
path: wheels
55+
56+
publish_wheels:
57+
if: github.repository_owner == 'move-coop'
58+
needs: build_wheels
59+
60+
runs-on: ubuntu-latest
61+
environment: release
62+
63+
permissions:
64+
# IMPORTANT: this permission is mandatory for trusted publishing
65+
id-token: write
66+
67+
steps:
68+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
69+
70+
- name: Download wheels
71+
uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
72+
with:
73+
pattern: wheels-*
74+
path: wheels
75+
merge-multiple: true
76+
77+
# Publish
78+
- name: Publish
79+
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
80+
with:
81+
verify-metadata: true
82+
skip-existing: true
83+
packages-dir: wheels
84+
verbose: true

requirements-dev.txt

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,16 @@ requests-mock==1.12.1
1111
ruff==0.11.7
1212
testfixtures==8.3.0
1313

14+
# Build and publish requirements
15+
cibuildwheel==2.23.0
16+
twine==6.1.0
17+
wheel==0.45.1
18+
1419
# Docs Requirements
15-
Sphinx==8.1.3;python_version>='3.10'
16-
Sphinx==7.4.7;python_version<'3.10'
17-
sphinx-rtd-theme==3.0.2
18-
myst-parser==4.0.1;python_version>='3.10'
1920
myst-parser==3.0.1;python_version<'3.10'
21+
myst-parser==4.0.1;python_version>='3.10'
2022
sphinx-multiversion
23+
sphinx-rtd-theme==3.0.2
2124
sphinxcontrib-googleanalytics
25+
Sphinx==7.4.7;python_version<'3.10'
26+
Sphinx==8.1.3;python_version>='3.10'

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ def main():
8787

8888
setup(
8989
name="parsons",
90-
version="5.0.0", # ensure this version number is in format of n.n.n, not n or n.n
90+
version="5.1.0", # ensure this version number is in format of n.n.n, not n or n.n
9191
author="The Movement Cooperative",
9292
author_email="info@movementcooperative.org",
9393
url="https://github.com/move-coop/parsons",

0 commit comments

Comments
 (0)