Skip to content

Commit

Permalink
switch to rye
Browse files Browse the repository at this point in the history
  • Loading branch information
carderne committed Apr 16, 2024
1 parent 5cb8e08 commit e272054
Show file tree
Hide file tree
Showing 5 changed files with 284 additions and 38 deletions.
9 changes: 0 additions & 9 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,12 +1,3 @@
.PHONY: lint
lint:
ruff format .
ruff check .

.PHONY: check
check:
pyright

.PHONY: test
test:
pytest
Expand Down
19 changes: 6 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,20 +32,13 @@ Download or clone the repository and install the required packages (preferably i
```bash
git clone https://github.com/carderne/gridfinder.git
cd gridfinder
pip install -e '.[dev]'
rye sync
```

### Linting
Useful commands:
```bash
make lint
```

### Typecheck
```bash
make check
```

### Testing
```bash
make test
rye fmt
rye lint
rye run check # type check
rye run test
```
34 changes: 18 additions & 16 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
[build-system]
requires = [
"setuptools>=65",
"wheel>=0.37.1",
"setuptools-scm[toml]>=7.0.5",
]
build-backend = "setuptools.build_meta"
[tool.rye.scripts]
check = "pyright"
test = "pytest"

[project]
name = "gridfinder"
Expand All @@ -15,7 +11,7 @@ requires-python = ">=3.9"
keywords = ["ntl", "electricity", "grid"]

authors = [
{name = "Chris Arderne", email="[email protected]"},
{name = "Chris Arderne", email="[email protected]"},
]

dynamic = ["version"]
Expand Down Expand Up @@ -49,8 +45,11 @@ dependencies = [
"Shapely ~= 2.0",
]

[project.optional-dependencies]
dev = [
[tool.rye]
managed = true
dev-dependencies = [
"pyright",
"pytest",
"descartes ~= 1.1.0",
"folium ~= 0.15",
"matplotlib ~= 3.8",
Expand All @@ -63,14 +62,15 @@ dev = [
homepage = "https://gridfinder.rdrn.me"
repository = "https://github.com/carderne/gridfinder"

[tool.setuptools]
include-package-data = false
[build-system]
requires = ["pdm-backend"]
build-backend = "pdm.backend"

[tool.setuptools.packages.find]
include = ["gridfinder"]
exclude = ["docs*", "tests*"]
[tool.pdm.build]
includes = ["gridfinder/"]

[tool.setuptools_scm]
[tool.pdm.version]
source = "scm"

[tool.ruff]
target-version = "py39"
Expand All @@ -96,6 +96,8 @@ select = [
known-first-party = ["gridfinder"]

[tool.pyright]
venvPath = "."
venv = ".venv"
include = ["gridfinder", "tests"]
reportMissingImports = true
reportMissingParameterType = true
Expand Down
156 changes: 156 additions & 0 deletions requirements-dev.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
# generated by rye
# use `rye lock` or `rye sync` to update this lockfile
#
# last locked with the following flags:
# pre: false
# features: []
# all-features: false
# with-sources: false

-e file:.
affine==2.4.0
# via gridfinder
# via rasterio
attrs==23.2.0
# via fiona
# via rasterio
branca==0.7.1
# via folium
certifi==2024.2.2
# via fiona
# via pyproj
# via rasterio
# via requests
charset-normalizer==3.3.2
# via requests
click==8.1.7
# via click-plugins
# via cligj
# via fiona
# via gridfinder
# via rasterio
click-plugins==1.1.1
# via fiona
# via rasterio
cligj==0.7.2
# via fiona
# via rasterio
contourpy==1.2.1
# via matplotlib
cycler==0.12.1
# via matplotlib
descartes==1.1.0
fiona==1.9.6
# via geopandas
# via gridfinder
folium==0.16.0
fonttools==4.51.0
# via matplotlib
geopandas==0.14.3
# via gridfinder
idna==3.7
# via requests
imageio==2.34.0
# via scikit-image
iniconfig==2.0.0
# via pytest
jinja2==3.1.3
# via branca
# via folium
kiwisolver==1.4.5
# via matplotlib
lazy-loader==0.4
# via scikit-image
llvmlite==0.42.0
# via numba
markupsafe==2.1.5
# via jinja2
matplotlib==3.8.4
# via descartes
# via seaborn
networkx==3.3
# via scikit-image
nodeenv==1.8.0
# via pyright
numba==0.59.1
# via gridfinder
numpy==1.26.4
# via contourpy
# via folium
# via gridfinder
# via imageio
# via matplotlib
# via numba
# via pandas
# via pyarrow
# via rasterio
# via scikit-image
# via scipy
# via seaborn
# via shapely
# via snuggs
# via tifffile
packaging==24.0
# via geopandas
# via lazy-loader
# via matplotlib
# via pytest
# via scikit-image
pandas==2.2.2
# via geopandas
# via gridfinder
# via seaborn
pillow==10.3.0
# via gridfinder
# via imageio
# via matplotlib
# via scikit-image
pluggy==1.4.0
# via pytest
pyarrow==15.0.2
# via gridfinder
pyparsing==3.1.2
# via matplotlib
# via snuggs
pyproj==3.6.1
# via geopandas
# via gridfinder
pyright==1.1.358
pytest==8.1.1
python-dateutil==2.9.0.post0
# via matplotlib
# via pandas
pytz==2024.1
# via pandas
rasterio==1.3.10
# via gridfinder
requests==2.31.0
# via folium
rtree==1.2.0
# via gridfinder
ruff==0.3.7
scikit-image==0.23.1
# via gridfinder
scipy==1.13.0
# via gridfinder
# via scikit-image
seaborn==0.13.2
setuptools==69.5.1
# via nodeenv
# via rasterio
shapely==2.0.3
# via geopandas
# via gridfinder
six==1.16.0
# via fiona
# via python-dateutil
snuggs==1.4.7
# via rasterio
tifffile==2024.2.12
# via scikit-image
tzdata==2024.1
# via pandas
urllib3==2.2.1
# via requests
xyzservices==2024.4.0
# via folium
104 changes: 104 additions & 0 deletions requirements.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
# generated by rye
# use `rye lock` or `rye sync` to update this lockfile
#
# last locked with the following flags:
# pre: false
# features: []
# all-features: false
# with-sources: false

-e file:.
affine==2.4.0
# via gridfinder
# via rasterio
attrs==23.2.0
# via fiona
# via rasterio
certifi==2024.2.2
# via fiona
# via pyproj
# via rasterio
click==8.1.7
# via click-plugins
# via cligj
# via fiona
# via gridfinder
# via rasterio
click-plugins==1.1.1
# via fiona
# via rasterio
cligj==0.7.2
# via fiona
# via rasterio
fiona==1.9.6
# via geopandas
# via gridfinder
geopandas==0.14.3
# via gridfinder
imageio==2.34.0
# via scikit-image
lazy-loader==0.4
# via scikit-image
llvmlite==0.42.0
# via numba
networkx==3.3
# via scikit-image
numba==0.59.1
# via gridfinder
numpy==1.26.4
# via gridfinder
# via imageio
# via numba
# via pandas
# via pyarrow
# via rasterio
# via scikit-image
# via scipy
# via shapely
# via snuggs
# via tifffile
packaging==24.0
# via geopandas
# via lazy-loader
# via scikit-image
pandas==2.2.2
# via geopandas
# via gridfinder
pillow==10.3.0
# via gridfinder
# via imageio
# via scikit-image
pyarrow==15.0.2
# via gridfinder
pyparsing==3.1.2
# via snuggs
pyproj==3.6.1
# via geopandas
# via gridfinder
python-dateutil==2.9.0.post0
# via pandas
pytz==2024.1
# via pandas
rasterio==1.3.10
# via gridfinder
rtree==1.2.0
# via gridfinder
scikit-image==0.23.1
# via gridfinder
scipy==1.13.0
# via gridfinder
# via scikit-image
setuptools==69.5.1
# via rasterio
shapely==2.0.3
# via geopandas
# via gridfinder
six==1.16.0
# via fiona
# via python-dateutil
snuggs==1.4.7
# via rasterio
tifffile==2024.2.12
# via scikit-image
tzdata==2024.1
# via pandas

0 comments on commit e272054

Please sign in to comment.