Skip to content

Commit

Permalink
remove py3.8 support (#666)
Browse files Browse the repository at this point in the history
* removed py38 support, dependencies and github workflow

* updated docs

* Bump version: 0.16.1 → 0.16.2
  • Loading branch information
veenstrajelmer authored Nov 17, 2023
1 parent f15bb1e commit 503afb0
Show file tree
Hide file tree
Showing 11 changed files with 16 additions and 63 deletions.
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 0.16.1
current_version = 0.16.2
commit = True
tag = True

Expand Down
42 changes: 0 additions & 42 deletions .github/workflows/pytest-py38.yml

This file was deleted.

2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ authors:
orcid: https://orcid.org/0000-0002-6349-818X
title: "dfm_tools: A Python package for pre- and postprocessing D-FlowFM model input and output files"
type: software
version: 0.16.1
version: 0.16.2
doi: https://doi.org/10.5281/zenodo.7857393
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
[![pytest-py38](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py38.yml/badge.svg?branch=main)](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py38.yml)
[![pytest-py39](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py39.yml/badge.svg?branch=main)](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py39.yml)
[![pytest-py310](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py310.yml/badge.svg?branch=main)](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py310.yml)
[![pytest-py311](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py311.yml/badge.svg?branch=main)](https://github.com/Deltares/dfm_tools/actions/workflows/pytest-py311.yml)
Expand All @@ -16,7 +15,7 @@ A Python package for pre- and postprocessing D-FlowFM model input and output fil

## Information

- python 3.11 is recommended, at least use python>=3.9 to ensure future updates ([more info](https://github.com/Deltares/dfm_tools/issues/267))
- python 3.11 is recommended, python>=3.9 is required ([more info](https://github.com/Deltares/dfm_tools/issues/267)), python 3.12 not yet supported ([more info](https://github.com/Deltares/dfm_tools/issues/551))
- install with ``pip install dfm_tools -U`` (or [installation guide](https://deltares.github.io/dfm_tools/installation))
- [online documentation](https://deltares.github.io/dfm_tools) with installation guide, contributing guide, tutorials/examples, API reference and a convenient search box.
- Bug or feature request? Create a [GitHub issue](https://github.com/Deltares/dfm_tools/issues)
2 changes: 1 addition & 1 deletion dfm_tools/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

__author__ = """Jelmer Veenstra"""
__email__ = "[email protected]"
__version__ = "0.16.1"
__version__ = "0.16.2"

from dfm_tools.deprecated import *
from dfm_tools.download import *
Expand Down
2 changes: 1 addition & 1 deletion docs/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

## Setup local developer environment

- python 3.11 is recommended, at least use python>=3.9 to ensure future updates ([more info](https://github.com/Deltares/dfm_tools/issues/267))
- python 3.11 is recommended, python>=3.9 is required ([more info](https://github.com/Deltares/dfm_tools/issues/267)), python 3.12 not yet supported ([more info](https://github.com/Deltares/dfm_tools/issues/551))
- download and install Anaconda from [anaconda.com](https://www.anaconda.com)
- open anaconda prompt and navigate to dfm_tools checkout folder, e.g. ``C:\DATA\dfm_tools``
- ``conda create --name dfm_tools_env python=3.11 git spyder -c conda-forge -y`` (``git`` and ``spyder`` are optional)
Expand Down
2 changes: 1 addition & 1 deletion docs/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

## Recommended installation

- python 3.11 is recommended, at least use python>=3.9 to ensure future updates ([more info](https://github.com/Deltares/dfm_tools/issues/267))
- python 3.11 is recommended, python>=3.9 is required ([more info](https://github.com/Deltares/dfm_tools/issues/267)), python 3.12 not yet supported ([more info](https://github.com/Deltares/dfm_tools/issues/551))
- download and install Anaconda from [anaconda.com](https://www.anaconda.com)
- open Anaconda prompt
- ``conda create --name dfm_tools_env python=3.11 git spyder -c conda-forge -y`` (``git`` and ``spyder`` are optional)
Expand Down
2 changes: 2 additions & 0 deletions docs/whats-new.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
## UNRELEASED
Support for Python 3.8 was dropped ([more info](https://github.com/Deltares/dfm_tools/issues/267))

### Feat
- pop np.nan `_FillValue` attrs in `dfmt.open_partitioned_dataset()` by [@veenstrajelmer](https://github.com/veenstrajelmer) in [#662](https://github.com/Deltares/dfm_tools/pull/662)
- interpolation of edge/node variables to faces with `dfmt.uda_to_faces()` (deprecates `dfmt.uda_edges_to_faces()`) by [@veenstrajelmer](https://github.com/veenstrajelmer) in [#651](https://github.com/Deltares/dfm_tools/pull/651) and [#644](https://github.com/Deltares/dfm_tools/pull/644)
- meshkernel 3.0.0 support by [@veenstrajelmer](https://github.com/veenstrajelmer) in [#621](https://github.com/Deltares/dfm_tools/pull/621) and [#665](https://github.com/Deltares/dfm_tools/pull/665)
- removed support for Python 3.8 by [@veenstrajelmer](https://github.com/veenstrajelmer) in [#666](https://github.com/Deltares/dfm_tools/pull/666)

### Fix
- get `is_geographic` from crs instead of hardcoded in `add_crs_to_dataset` by [@veenstrajelmer](https://github.com/veenstrajelmer) in [#657](https://github.com/Deltares/dfm_tools/pull/657)
Expand Down
16 changes: 5 additions & 11 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,21 @@ build-backend = "setuptools.build_meta"

[project]
name = "dfm_tools"
version = "0.16.1"
version = "0.16.2"
maintainers = [{ name = "Jelmer Veenstra", email = "[email protected]" }]
description = "dfm_tools are pre- and post-processing tools for Delft3D FM"
readme = "README.md"
keywords = ["dfm_tools", "D-FlowFM", "D-HYDRO", "post-processing", "pre-processing", "mapfiles", "hisfiles", "modelbuilder"]
license = { text = "LGPLv3" }
requires-python = ">=3.8"
requires-python = ">=3.9"
dependencies = [
#scipy<1.6.0 pip install fails in py39, is also 3 years old
"scipy>=1.6.0",
#numpy 1.21 is EOL since june 2023
"numpy>=1.22",
#contour colorbar on uniform values fails with matplotlib<3.7.0, several other features with matplotlib<3.6.0
"matplotlib>=3.7.0",
#pandas<2.0.0 in case of py38 to avoid conflict with xarray<2023.3.0: https://github.com/Deltares/xugrid/issues/78#issuecomment-1597723955 (xarray 2023.1.0 is the latest py38 release, and py38 is still supported by dfm_tools)
#pandas>=1.4 is required by xarray>=2023.3.0
"pandas<2.0.0;python_version<='3.8'",
"pandas>=1.4.0",
#shapely<2.0.0 give "AttributeError: module 'shapely' has no attribute 'GeometryType'"
"shapely>=2.0.0",
Expand All @@ -30,13 +28,10 @@ dependencies = [
"fiona>=1.9",
#contextily<1.0.0 is from April 2020
"contextily>=1.0.0",
#xarray<2023.4.0 conflicts with pandas<2.0.0 for resampling, only available for py39
#xarray<2022.6.0 did not find certain variable in dataset in test_data_map testcase
"xarray>=2023.4.0;python_version>='3.9'",
"xarray>=2022.6.0",
#xarray<2023.4.0 conflicts with pandas<2.0.0 for resampling
"xarray>=2023.4.0",
#dask is aligned with xarray, no particular reason
"dask>=2023.4.0;python_version>='3.9'",
"dask>=2022.11.0",
"dask>=2023.4.0",
#netcdf4<1.5.4 pip install fails in py39
"netcdf4>=1.5.4",
#bottleneck<1.3.3 pip install fails in py39
Expand All @@ -62,7 +57,6 @@ classifiers = [
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
Expand Down
4 changes: 2 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ shapely>=2.0.0
geopandas>=0.13.0
fiona>=1.9
contextily>=1.0.0
xarray>=2022.6.0
dask>=2022.11.0
xarray>=2023.4.0
dask>=2023.4.0
netcdf4>=1.5.4
bottleneck>=1.3.3
xugrid>=0.7.1
Expand Down
2 changes: 1 addition & 1 deletion sonar-project.properties
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
sonar.projectKey=Deltares_dfm_tools
sonar.organization=Deltares
sonar.python.version=3.8, 3.9, 3.10, 3.11
sonar.python.version=3.9, 3.10, 3.11

0 comments on commit 503afb0

Please sign in to comment.