Skip to content

Commit 60597a1

Browse files
authored
Update PPT and add lowest supported versions (#502)
* Update PPT and add lowest supported versions * Better cdshealpix pin * Newer matplotlib * Ooops * More recent astropy too * Newer nested.
1 parent 039366d commit 60597a1

File tree

6 files changed

+44
-62
lines changed

6 files changed

+44
-62
lines changed

.copier-answers.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Changes here will be overwritten by Copier
2-
_commit: v2.0.6
2+
_commit: v2.0.7
33
_src_path: gh:lincc-frameworks/python-project-template
44
author_email: [email protected]
55
author_name: LINCC Frameworks
@@ -24,3 +24,4 @@ python_versions:
2424
- '3.11'
2525
- '3.12'
2626
- '3.13'
27+
test_lowest_version: direct

.github/workflows/asv-main.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ jobs:
3434
with:
3535
fetch-depth: 0
3636
- name: Install dependencies
37-
run: pip install "asv[virtualenv]==${{env.ASV_VERSION}}"
37+
run: |
38+
pip install asv==${{env.ASV_VERSION}}
39+
pip install virtualenv==20.30 # Temporary fix to airspeed-velocity/asv#1484
3840
- name: Configure git
3941
run: |
4042
git config user.name "github-actions[bot]"

.github/workflows/asv-nightly.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,9 @@ jobs:
3030
with:
3131
fetch-depth: 0
3232
- name: Install dependencies
33-
run: pip install "asv[virtualenv]==${{env.ASV_VERSION}}"
33+
run: |
34+
pip install asv==${{env.ASV_VERSION}}
35+
pip install virtualenv==20.30 # Temporary fix to airspeed-velocity/asv#1484
3436
- name: Configure git
3537
run: |
3638
git config user.name "github-actions[bot]"

.github/workflows/asv-pr.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ jobs:
3939
run: |
4040
echo "Workflow Run ID: ${{github.run_id}}"
4141
- name: Install dependencies
42-
run: pip install "asv[virtualenv]==${{env.ASV_VERSION}}" lf-asv-formatter
42+
run: |
43+
pip install asv==${{env.ASV_VERSION}} lf-asv-formatter
44+
pip install virtualenv==20.30 # Temporary fix to airspeed-velocity/asv#1484
4345
- name: Make artifacts directory
4446
run: mkdir -p ${{env.ARTIFACTS_DIR}}
4547
- name: Save pull request number

.github/workflows/testing-and-coverage.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
12
# This workflow will install Python dependencies, run tests and report code coverage with a variety of Python versions
23
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
34

@@ -36,3 +37,23 @@ jobs:
3637
uses: codecov/codecov-action@v5
3738
with:
3839
token: ${{ secrets.CODECOV_TOKEN }}
40+
test-lowest-versions:
41+
runs-on: ubuntu-latest
42+
steps:
43+
- uses: actions/checkout@v4
44+
- name: Set up Python 3.10
45+
uses: actions/setup-python@v5
46+
with:
47+
python-version: '3.10'
48+
- name: Install dependencies
49+
run: |
50+
sudo apt-get update
51+
python -m pip install --upgrade uv
52+
uv venv venv
53+
source venv/bin/activate
54+
uv pip compile --resolution=lowest-direct -o requirements_lowest.txt pyproject.toml
55+
uv pip install --constraint=requirements_lowest.txt -e .[dev]
56+
- name: Run unit tests with pytest
57+
run: |
58+
source venv/bin/activate
59+
python -m pytest

pyproject.toml

Lines changed: 12 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -18,21 +18,22 @@ classifiers = [
1818
dynamic = ["version"]
1919
requires-python = ">=3.10"
2020
dependencies = [
21-
"aiohttp", # http filesystem support
22-
"astropy",
21+
"aiohttp>=3.8.0", # http filesystem support
22+
"astropy>=6.1.5",
23+
"cdshealpix>=0.7.0",
2324
"fsspec>=2023.10.0", # Used for abstract filesystems
24-
"jproperties",
25-
"matplotlib>=3.3",
25+
"jproperties>=2.0.0",
26+
"matplotlib>=3.10.1",
2627
"mocpy>=0.17.1",
28+
"nested-pandas>=0.4.1",
2729
"numba>=0.58",
28-
"numpy<3",
29-
"pandas",
30-
"nested-pandas>=0.3.8,<0.5.0",
30+
"numpy>=2,<3",
31+
"pandas>=2.0",
3132
"pyarrow>=14.0.1",
32-
"pydantic",
33-
"scipy",
33+
"pydantic>=2.0",
34+
"scipy>=1.7.2",
3435
"typing-extensions>=4.3.0",
35-
"universal-pathlib",
36+
"universal-pathlib>=0.2.2",
3637
]
3738

3839
[project.urls]
@@ -76,54 +77,7 @@ omit=["src/hats/_version.py"]
7677

7778
[tool.black]
7879
line-length = 110
79-
target-version = ["py38"]
80-
80+
target-version = ["py310"]
8181
[tool.isort]
8282
profile = "black"
8383
line_length = 110
84-
85-
[tool.ruff]
86-
line-length = 110
87-
target-version = "py310"
88-
89-
[tool.ruff.lint]
90-
select = [
91-
# pycodestyle
92-
"E",
93-
"W",
94-
# Pyflakes
95-
"F",
96-
# pep8-naming
97-
"N",
98-
# pyupgrade
99-
"UP",
100-
# flake8-bugbear
101-
"B",
102-
# flake8-simplify
103-
"SIM",
104-
# isort
105-
"I",
106-
# docstrings
107-
"D101",
108-
"D102",
109-
"D103",
110-
"D106",
111-
"D206",
112-
"D207",
113-
"D208",
114-
"D300",
115-
"D417",
116-
"D419",
117-
# Numpy v2.0 compatibility
118-
"NPY201",
119-
]
120-
121-
ignore = [
122-
"UP006", # Allow non standard library generics in type hints
123-
"UP007", # Allow Union in type hints
124-
"SIM114", # Allow if with same arms
125-
"B028", # Allow default warning level
126-
"SIM117", # Allow nested with
127-
"UP015", # Allow redundant open parameters
128-
"UP028", # Allow yield in for loop
129-
]

0 commit comments

Comments
 (0)