Skip to content

Commit

Permalink
Merge pull request #4016 from lsst-sqre/tickets/DM-48199
Browse files Browse the repository at this point in the history
DM-48199: Add Python 3.13 support, update dependencies
  • Loading branch information
rra authored Dec 18, 2024
2 parents 8ab8ef2 + 9dcb13c commit 47b2f26
Show file tree
Hide file tree
Showing 9 changed files with 307 additions and 249 deletions.
14 changes: 11 additions & 3 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
name: CI

env:
# Current supported Python version. For applications, there is generally no
# reason to support multiple Python versions, so all actions are run with
# this version. Quote the version to avoid interpretation as a floating
# point number.
PYTHON_VERSION: "3.13"

"on":
merge_group: {}
pull_request: {}
Expand All @@ -24,7 +31,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
python-version: ${{ env.PYTHON_VERSION }}

- name: Run pre-commit
uses: pre-commit/[email protected]
Expand All @@ -38,6 +45,7 @@ jobs:
python:
- "3.11"
- "3.12"
- "3.13"

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -71,7 +79,7 @@ jobs:

- uses: lsst-sqre/run-tox@v1
with:
python-version: "3.12"
python-version: ${{ env.PYTHON_VERSION }}
tox-envs: phalanx-lint-change
tox-requirements: requirements/tox.txt
cache-key-prefix: helm
Expand Down Expand Up @@ -134,7 +142,7 @@ jobs:
if: steps.filter.outputs.minikube == 'true'
timeout-minutes: 15
with:
python-version: "3.12"
python-version: ${{ env.PYTHON_VERSION }}
tox-envs: install
tox-requirements: requirements/tox.txt
tox-posargs: >-
Expand Down
9 changes: 8 additions & 1 deletion .github/workflows/docs.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
name: Docs

env:
# Current supported Python version. For applications, there is generally no
# reason to support multiple Python versions, so all actions are run with
# this version. Quote the version to avoid interpretation as a floating
# point number.
PYTHON_VERSION: "3.13"

"on":
merge_group: {}
pull_request: {}
Expand Down Expand Up @@ -53,7 +60,7 @@ jobs:
if: steps.filter.outputs.docs == 'true' || github.event_name == 'workflow_dispatch'
uses: lsst-sqre/run-tox@v1
with:
python-version: "3.12"
python-version: ${{ env.PYTHON_VERSION }}
tox-envs: docs
tox-requirements: requirements/tox.txt
cache-key-prefix: docs
Expand Down
9 changes: 8 additions & 1 deletion .github/workflows/linkcheck.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,13 @@

name: Link Check

env:
# Current supported Python version. For applications, there is generally no
# reason to support multiple Python versions, so all actions are run with
# this version. Quote the version to avoid interpretation as a floating
# point number.
PYTHON_VERSION: "3.13"

"on":
push:
branches-ignore:
Expand Down Expand Up @@ -48,7 +55,7 @@ jobs:
- name: Check links
uses: lsst-sqre/run-tox@v1
with:
python-version: "3.12"
python-version: ${{ env.PYTHON_VERSION }}
tox-envs: docs-linkcheck
tox-requirements: requirements/tox.txt
cache-key-prefix: docs-linkcheck
7 changes: 3 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ help:
@echo "make linkcheck - Check for broken links in documentation"
@echo "make update - Update pinned dependencies and run make init"
@echo "make update-deps - Update pinned dependencies"
@echo "make update-deps-no-hashes - Pin dependencies without hashes"

.PHONY: clean
clean:
Expand Down Expand Up @@ -41,11 +40,11 @@ update-deps:
pip install --upgrade pip uv
uv pip install --upgrade pre-commit
pre-commit autoupdate
uv pip compile --upgrade --universal --generate-hashes \
uv pip compile -p 3.11 --upgrade --universal --generate-hashes \
--output-file requirements/main.txt pyproject.toml
uv pip compile --upgrade --universal --generate-hashes \
uv pip compile -p 3.11 --upgrade --universal --generate-hashes \
--output-file requirements/dev.txt requirements/dev.in
uv pip compile --upgrade --universal --generate-hashes \
uv pip compile -p 3.11 --upgrade --universal --generate-hashes \
--output-file requirements/tox.txt requirements/tox.in

# Useful for testing against a Git version of Safir.
Expand Down
4 changes: 3 additions & 1 deletion docs/documenteer.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
title = "Phalanx"
copyright = "2020-2023 Association of Universities for Research in Astronomy, Inc. (AURA)"
copyright = "2020-2024 Association of Universities for Research in Astronomy, Inc. (AURA)"
base_url = "https://phalanx.lsst.io"
github_url = "https://github.com/lsst-sqre/phalanx"
github_default_branch = "main"
Expand Down Expand Up @@ -32,6 +32,8 @@ nitpick_ignore = [
["py:class", "pydantic.utils.Representation"],
["py:obj", "ComputedFieldInfo"],
["py:obj", "pydantic.BaseModel.model_dict"],
# See https://github.com/sphinx-doc/sphinx/issues/13178
["py:class", "pathlib._local.Path"],
]
nitpick_ignore_regex = [
# Bug in Sphinx
Expand Down
8 changes: 4 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ classifiers = [
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Intended Audience :: Developers",
"Operating System :: POSIX",
]
Expand Down Expand Up @@ -44,16 +45,13 @@ Source = "https://github.com/lsst-sqre/phalanx"
[build-system]
requires = [
"setuptools>=61",
"wheel",
"setuptools_scm[toml]>=6.2"
]
build-backend = "setuptools.build_meta"

[tool.setuptools_scm]

[tool.black]
line-length = 79
target-version = ["py312"]
target-version = ["py313"]

[tool.coverage.run]
parallel = true
Expand Down Expand Up @@ -128,3 +126,5 @@ extend = "ruff-shared.toml"
[tool.ruff.lint.isort]
known-first-party = ["phalanx", "tests"]
split-on-trailing-comma = false

[tool.setuptools_scm]
Loading

0 comments on commit 47b2f26

Please sign in to comment.