Skip to content

Commit e40495e

Browse files
authored
v3.0.5 PEP 735 dependency groups (dev & test). Merges PR #386 from mwtoews/pep-735
Use dependency groups for dev and test (PEP 735)
2 parents 27f2f8a + bc3dd60 commit e40495e

6 files changed

Lines changed: 36 additions & 14 deletions

File tree

.github/actions/test/action.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,9 @@ runs:
7676
shell: bash
7777
working-directory: dist/
7878
run: |
79+
python -m pip install --upgrade pip
7980
WHEEL_NAME=$(ls pyshp-*py3-none-any.whl)
80-
python -m pip install $WHEEL_NAME[test]
81+
python -m pip install $WHEEL_NAME --group ../Pyshp/pyproject.toml:test
8182
8283
- name: Doctests
8384
shell: bash
@@ -113,4 +114,4 @@ runs:
113114
shell: bash
114115
run: |
115116
echo Killing http server process ID: ${{ env.HTTP_SERVER_PID }}
116-
kill ${{ env.HTTP_SERVER_PID }}
117+
kill ${{ env.HTTP_SERVER_PID }}

.github/workflows/speed_test.yml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -44,18 +44,17 @@ jobs:
4444
name: PyShp_wheel_and_sdist
4545
path: dist
4646

47+
- uses: actions/checkout@v6
48+
with:
49+
path: ./Pyshp
50+
4751
- name: Install PyShp + test deps from the wheel (downloaded in prev step)
4852
shell: bash
4953
working-directory: dist/
5054
run: |
55+
python -m pip install --upgrade pip
5156
WHEEL_NAME=$(ls pyshp-*py3-none-any.whl)
52-
python -m pip install $WHEEL_NAME[test]
53-
54-
- uses: actions/checkout@v6
55-
with:
56-
path: ./Pyshp
57-
58-
57+
python -m pip install $WHEEL_NAME --group ../Pyshp/pyproject.toml:test
5958
6059
- name: Checkout shapefiles and zip file artefacts repo
6160
uses: actions/checkout@v6

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,12 @@ part of your geospatial project.
9393

9494
# Version Changes
9595

96+
## 3.0.5
97+
98+
### Project structure:
99+
- Use dependency groups for dev and test instead of optional-dependencies in pyproject.toml ([Mike Toews](https://github.com/mwtoews))
100+
101+
96102
## 3.0.4
97103

98104
### Type checking

changelog.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
VERSION 3.0.5
2+
3+
2026-05-18
4+
Project structure:
5+
* Use dependency groups for dev and test instead of optional-dependencies in pyproject.toml (Mike Toews)
6+
17
VERSION 3.0.4
28

39
2026-05-17

pyproject.toml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,24 @@ classifiers = [
2626
"Topic :: Software Development :: Libraries",
2727
"Topic :: Software Development :: Libraries :: Python Modules",
2828
]
29-
dependencies = [
30-
]
3129

3230
[project.optional-dependencies]
33-
dev = ["pyshp[test]", "pre-commit", "ruff"]
34-
test = ["pytest"]
3531
stubs=["pyshp-stubs"]
3632

33+
[dependency-groups]
34+
dev = [
35+
{include-group = "lint"},
36+
{include-group = "test"}
37+
]
38+
lint = [
39+
"mypy",
40+
"pre-commit",
41+
"ruff",
42+
]
43+
test = [
44+
"pytest",
45+
]
46+
3747
[project.urls]
3848
Repository = "https://github.com/GeospatialPython/pyshp"
3949

src/shapefile.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
from __future__ import annotations
1010

11-
__version__ = "3.0.4"
11+
__version__ = "3.0.5"
1212

1313
import array
1414
import doctest

0 commit comments

Comments
 (0)