Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
f548723
CI: switch to using single pyproject.toml
dmgav Jul 13, 2026
b26088b
CI: initialize pixi
dmgav Jul 13, 2026
68cc382
CI: tests running with pixi locally
dmgav Jul 14, 2026
2554041
CI: modify workflow to run tests using pixi
dmgav Jul 14, 2026
dd787ab
CI: install pixi before running tests
dmgav Jul 14, 2026
daf3ff8
CI: install pixi before running tests
dmgav Jul 14, 2026
8ba4475
CI: remove pixi.lock
dmgav Jul 14, 2026
a54854e
CI: add pixi.lock to .gitignore
dmgav Jul 14, 2026
b267afa
CI: update precommit
dmgav Jul 14, 2026
16151f0
CI: ignore C408 and B011 in ruff
dmgav Jul 14, 2026
9e54072
CI: ignore _version.py
dmgav Jul 14, 2026
4282e12
CI: add ruff to dependencies
dmgav Jul 14, 2026
4cf3fcc
CI: add ruff to dependencies
dmgav Jul 14, 2026
352721f
CI: ruff ignore UP006
dmgav Jul 14, 2026
2c9398c
CI: ruff ignore PYI041
dmgav Jul 14, 2026
be0bd33
CI: ruff ignore UP007
dmgav Jul 14, 2026
25a63bd
CI: ruff ignore UP045
dmgav Jul 14, 2026
d7d9c90
STY: autocorrections from ruff
dmgav Jul 14, 2026
921c37c
STY: rewrite unnecessary comprehensions
dmgav Jul 14, 2026
46d0c39
STY: linting changes
dmgav Jul 14, 2026
8204090
CI: fix for pre-commit GH action
dmgav Jul 14, 2026
d19394c
CI: remove separate black, flake8 and isort workflows
dmgav Jul 14, 2026
df799b7
CI: change doc building action to use pixi
dmgav Jul 15, 2026
9e39855
CI: remove unnecessary comprehension
dmgav Jul 15, 2026
783d9b5
CI: update path in .test_duration file
dmgav Jul 15, 2026
b3863d4
CI: update doc pubishing action
dmgav Jul 15, 2026
2b830f0
CI: make UP linting errors reportable, but not automatically fixable
dmgav Jul 15, 2026
0657d35
STY: add noqa statements for UP006, UP007 and UP045
dmgav Jul 15, 2026
8908962
CI: use pixi environment to generate test durations
dmgav Jul 15, 2026
c2734f3
CI: create pypi.yml GH action
dmgav Jul 16, 2026
6f2e4a5
CI: call 'build' in the module form
dmgav Jul 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
bluesky_queueserver/_version.py export-subst
# SCM syntax highlighting & preventing 3-way merges
pixi.lock merge=binary linguist-language=YAML linguist-generated=true -diff
21 changes: 0 additions & 21 deletions .github/workflows/black.yml

This file was deleted.

53 changes: 28 additions & 25 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,33 +5,36 @@ on: [push, pull_request]
jobs:
build:

name: Test building docs

runs-on: ubuntu-latest

env:
python_env: py313

strategy:
matrix:
python-version: ['3.12']
fail-fast: false

steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- uses: shogo82148/actions-setup-redis@v1
with:
redis-version: "7.x"
- name: Install dependencies
run: |
# sudo apt install redis

# These packages are installed in the base environment but may be older
# versions. Explicitly upgrade them because they often create
# installation problems if out of date.
python -m pip install --upgrade pip setuptools numpy

pip install .
pip install -r requirements-dev.txt
pip list
- name: Build Docs
run: |
make -C docs/ html
- uses: actions/checkout@v4
with:
# Need this to get version number from last tag
fetch-depth: 0

- uses: shogo82148/actions-setup-redis@v1
with:
redis-version: "7.x"

- uses: prefix-dev/setup-pixi@v0.10.0

- name: Install dev dependencies
run: |
set -vxeuo pipefail
pixi install --environment=${{ env.python_env }}
pixi list --environment=${{ env.python_env }}
pixi run --environment=${{ env.python_env }} pip list
pixi run --environment=${{ env.python_env }} conda list

- name: Run pre-commit
run: |
pixi run --environment=${{ env.python_env }} make -C docs/ html
87 changes: 43 additions & 44 deletions .github/workflows/docs_publish.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Publish Docs
name: Documentation

on:
push:
Expand All @@ -8,51 +8,50 @@ on:
jobs:
build:
if: github.repository_owner == 'bluesky'

name: Build and publish docs

runs-on: ubuntu-latest

env:
python_env: py313

strategy:
matrix:
python-version: ['3.12']
fail-fast: false

steps:
- uses: actions/checkout@v2
with:
fetch-depth: 1000 # should be enough to reach the most recent tag
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- uses: shogo82148/actions-setup-redis@v1
with:
redis-version: "7.x"
- name: Install dependencies
run: |
# sudo apt install redis

# Versioneer uses the most recent git tag to generate __version__, which appears
# in the published documentation.
git fetch --tags

# These packages are installed in the base environment but may be older
# versions. Explicitly upgrade them because they often create
# installation problems if out of date.
python -m pip install --upgrade pip setuptools numpy

pip install .
pip install -r requirements-dev.txt
pip list
- name: Build Docs
run: |
make -C docs/ html
- name: Deploy documentation to blueskyproject.io
# We pin to the SHA, not the tag, for security reasons.
# https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/security-hardening-for-github-actions#using-third-party-actions
uses: peaceiris/actions-gh-pages@bbdfb200618d235585ad98e965f4aafc39b4c501 # v3.7.3
with:
deploy_key: ${{ secrets.ACTIONS_DOCUMENTATION_DEPLOY_KEY }}
publish_branch: master
publish_dir: ./docs/build/html
external_repository: bluesky/bluesky.github.io
destination_dir: bluesky-queueserver
keep_files: true # Keep old files.
force_orphan: false # Keep git history.
- uses: actions/checkout@v4
with:
# Need this to get version number from last tag
fetch-depth: 0

- uses: shogo82148/actions-setup-redis@v1
with:
redis-version: "7.x"

- uses: prefix-dev/setup-pixi@v0.10.0

- name: Install dev dependencies
run: |
set -vxeuo pipefail
pixi install --environment=${{ env.python_env }}
pixi list --environment=${{ env.python_env }}
pixi run --environment=${{ env.python_env }} pip list
pixi run --environment=${{ env.python_env }} conda list

- name: Run pre-commit
run: |
pixi run --environment=${{ env.python_env }} make -C docs/ html

- name: Deploy documentation to blueskyproject.io
# We pin to the SHA, not the tag, for security reasons.
# https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/security-hardening-for-github-actions#using-third-party-actions
uses: peaceiris/actions-gh-pages@bbdfb200618d235585ad98e965f4aafc39b4c501 # v3.7.3
with:
deploy_key: ${{ secrets.ACTIONS_DOCUMENTATION_DEPLOY_KEY }}
publish_branch: master
publish_dir: ./docs/build/html
external_repository: bluesky/bluesky.github.io
destination_dir: bluesky-queueserver
keep_files: true # Keep old files.
force_orphan: false # Keep git history.
21 changes: 0 additions & 21 deletions .github/workflows/flake8.yml

This file was deleted.

21 changes: 0 additions & 21 deletions .github/workflows/isort.yml

This file was deleted.

22 changes: 17 additions & 5 deletions .github/workflows/pre-commit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,35 @@ jobs:
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.repository

name: Check code style

runs-on: ubuntu-latest

env:
python_env: py313

strategy:
fail-fast: false

defaults:
run:
shell: bash -l {0}

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
# Need this to get version number from last tag
fetch-depth: 0

- uses: actions/setup-python@v4
- uses: prefix-dev/setup-pixi@v0.10.0

- name: Install dev dependencies
run: |
set -vxeuo pipefail
pip install -r requirements-dev.txt
python -m pip list
pixi install --environment=${{ env.python_env }}
pixi list --environment=${{ env.python_env }}
pixi run --environment=${{ env.python_env }} pip list
pixi run --environment=${{ env.python_env }} conda list

- name: Run pre-commit
run: pre-commit run --all-files
run: |
pixi run --environment=${{ env.python_env }} pre-commit run --all-files
55 changes: 55 additions & 0 deletions .github/workflows/pypi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Publish the release to PyPI

on:
release:
types: [created]

jobs:
build:

name: Upload to PyPI

if: github.repository_owner == 'bluesky'
runs-on: ubuntu-latest

env:
python_env: py313

strategy:
fail-fast: false

steps:
- uses: actions/checkout@v4
with:
# Need this to get version number from last tag
fetch-depth: 0

- uses: prefix-dev/setup-pixi@v0.10.0

- name: Install dev dependencies
run: |
set -vxeuo pipefail
pixi install --environment=${{ env.python_env }}
pixi list --environment=${{ env.python_env }}
pixi run --environment=${{ env.python_env }} pip list
pixi run --environment=${{ env.python_env }} conda list

- name: Build sdist and wheel
run: >
export SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct) &&
pixi run --environment=${{ env.python_env }} python -m build

- name: Check for packaging errors
run: pixi run --environment=${{ env.python_env }} twine check --strict dist/*

- name: Install produced wheel
run: pixi run --environment=${{ env.python_env }} pip install dist/*.whl

- name: Test module is importable using the installed wheel
# If more than one module in src/ replace with module name to test
run: pixi run --environment=${{ env.python_env }} python -c "import $(ls --hide='*.egg-info' src | head -1)"

- name: Publish to PyPI using trusted publishing
uses: pypa/gh-action-pypi-publish@release/v1
with:
attestations: false
35 changes: 0 additions & 35 deletions .github/workflows/python-publish.yml

This file was deleted.

Loading
Loading