Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v1.0.0 #1066

Merged
merged 130 commits into from
Sep 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
130 commits
Select commit Hold shift + click to select a range
bf2e8e0
Reorg (#772)
savente93 Feb 8, 2024
cf65a1d
Add driver for GeoDataFrame (#750)
Jaapel Feb 9, 2024
695fda0
Create Model root class (#757)
savente93 Feb 9, 2024
49c6013
enable testing workflows from main
savente93 Feb 13, 2024
0ff220b
hopfully enable tests for real this time
savente93 Feb 13, 2024
8556208
fix path in update env step
savente93 Feb 13, 2024
243debd
Data Catalog roots (#786)
savente93 Feb 20, 2024
aad8532
Fix logger config in set root (#788)
savente93 Feb 21, 2024
59eac3a
add check for warnings (#794)
Jaapel Feb 26, 2024
84aafa4
remove dict-like features from data catalog (#790)
savente93 Feb 27, 2024
bff1981
Remove support for `.ini` and `.toml` format for configurations (#791)
savente93 Feb 28, 2024
6051c03
Merge branch 'main' into v1
savente93 Feb 29, 2024
4738216
update pixi.lock
savente93 Feb 29, 2024
f8c642f
Merge main to v1 (#819)
deltamarnix Mar 4, 2024
8bc1ea9
Add model region class (#810)
savente93 Mar 6, 2024
b5b8e17
Merge branch 'main' into v1
savente93 Mar 6, 2024
261e1d2
Merge branch 'main' into v1
savente93 Mar 6, 2024
2afb033
Fix warnings (#829)
savente93 Mar 6, 2024
9f8aba0
Pin pixi to 0.15.2 (#838)
deltamarnix Mar 11, 2024
46f0348
ModelComponent Class (#769)
Tjalling-dejong Mar 12, 2024
b830958
Add zarr driver (#787)
Jaapel Mar 26, 2024
53e3fd1
Refactor model and components (#845)
deltamarnix Mar 27, 2024
e5d5fc4
Table component (#850)
savente93 Apr 2, 2024
b439aa0
Add NetCDF driver (#858)
Jaapel Apr 3, 2024
b0a5308
Implement default file path pattern for tables component (#869)
savente93 Apr 5, 2024
cea4fd0
Add `ConfigComponent` (#863)
savente93 Apr 5, 2024
795af3d
Remove Network model (#871)
savente93 Apr 8, 2024
c0278d8
Add `GeomsComponent` (#867)
savente93 Apr 9, 2024
f5eb924
plugins for drivers (#866)
Jaapel Apr 9, 2024
19a33d3
Vector component (#854)
deltamarnix Apr 10, 2024
5d35e51
Add fsspec to driver (#873)
Jaapel Apr 12, 2024
1ce81be
Update v1 (#884)
savente93 Apr 15, 2024
3948544
Data source to file (#887)
Jaapel Apr 17, 2024
5603c0e
Mesh component (#792)
Tjalling-dejong Apr 18, 2024
8e278dd
small refactor driver (#903)
DirkEilander Apr 22, 2024
2cad087
901/meta refactor (#905)
Jaapel Apr 24, 2024
4eea2d0
add options for driver (#904)
Jaapel Apr 24, 2024
7b4e30f
Dataset component (#894)
savente93 Apr 26, 2024
8b4834e
merge netcdf and zarr driver (#908)
savente93 Apr 29, 2024
66218cf
879/dataframe (#911)
Jaapel Apr 30, 2024
7779d7f
Add `GeoDatasetDriver` `GeoDatasetSource` and new `GeoDatasetAdapter`…
savente93 May 6, 2024
49d6948
GeoPandasDriver uses `variables` (#916)
Jaapel May 7, 2024
95f589e
857/raster driver (#920)
Jaapel May 8, 2024
6a5ab27
Merge back (#923)
savente93 May 14, 2024
f2b4a10
Geodataset xarray driver (#926)
savente93 May 16, 2024
194413b
add geodataframe table driver (#927)
Jaapel May 16, 2024
e5a1055
Add URI resolver for raster_tindex files (#928)
Tjalling-dejong May 22, 2024
184be75
Grid inherits from SpatialModelComponent (#888)
deltamarnix May 22, 2024
f693b72
917/refactor data catalog (#934)
Jaapel May 23, 2024
3898db2
Update migrating-to-v1.rst (#949)
Jaapel May 24, 2024
e5fda73
renable table integration test (#952)
savente93 May 24, 2024
c6d78bd
Fix warnings (#951)
savente93 May 24, 2024
ae0bb37
renable and fixt geodataframe source test (#955)
savente93 May 24, 2024
c35f968
942/integration tests data adapter (#954)
Jaapel May 24, 2024
a13aac8
942/integration tests data adapter dataframe (#961)
Jaapel May 29, 2024
8ea7f17
942/integration tests data adapter (#969)
Jaapel May 30, 2024
99f47cf
GridComponent integration test (#948)
Tjalling-dejong May 30, 2024
aace3ce
Reenable mesh tests (#968)
Tjalling-dejong May 30, 2024
2b66b50
restructure V1 migration guide (#950)
DirkEilander May 31, 2024
7b7b4be
Data catalog tests (#970)
savente93 May 31, 2024
da33dc1
restructure plugins (#971)
DirkEilander May 31, 2024
140dbda
937/finish data catalog tests (#980)
Jaapel Jun 4, 2024
249a23b
896/to file fallback (#982)
Jaapel Jun 4, 2024
8759c16
remove migration guide workflow (#981)
savente93 Jun 5, 2024
36a1cf0
802/consistent nodata strat (#985)
Jaapel Jun 5, 2024
583f73d
restructure v1 package (#974)
DirkEilander Jun 5, 2024
75d5144
Reeenable spacial dataset tests (#956)
savente93 Jun 6, 2024
19a6126
Model integration tests (#986)
savente93 Jun 6, 2024
78901e7
remove remaining deprecation warnings (#987)
savente93 Jun 7, 2024
eb1a89c
Reenable `basin_mask` tests (#957)
savente93 Jun 11, 2024
6a48650
add docs on resolve method (#991)
Jaapel Jun 12, 2024
41d06ac
test package structure matches code (#993)
Jaapel Jun 13, 2024
43259e2
data adapter docs (#992)
Jaapel Jun 13, 2024
d50f044
878/dataset classes (#990)
Jaapel Jun 13, 2024
a320a2f
936/reenable test region (#989)
Jaapel Jun 14, 2024
3ce73e4
Parametrize source tests (#999)
Jaapel Jun 14, 2024
b5b89bd
938/reenable test forcing (#996)
Tjalling-dejong Jun 17, 2024
6d5b0b3
Merge back v1 (#1001)
Tjalling-dejong Jun 17, 2024
3c516c0
Revert "Merge back v1" (#1004)
savente93 Jun 17, 2024
12cf0e6
Cli integration tests (#988)
savente93 Jun 19, 2024
0184864
Merge back (#1005)
Tjalling-dejong Jun 19, 2024
30a113a
1006/fix multiple handler problem (#1011)
Jaapel Jun 25, 2024
a18ba60
rename to uriresolver (#1012)
Jaapel Jun 26, 2024
a0f435f
update predefined catalogs (deltares_data & artifact_data) (#833)
DirkEilander Jul 1, 2024
3364878
Update Naming conventions (#1017)
savente93 Jul 1, 2024
8c6ca49
Update xarray geopandas (#1013)
Tjalling-dejong Jul 1, 2024
f3ae60e
Enable mypy as pixi task (#1010)
deltamarnix Jul 4, 2024
c401804
875/slippy map resolver (#1024)
Jaapel Jul 9, 2024
e965e1d
1025/caching cloud (#1026)
Jaapel Jul 16, 2024
78dbb66
Seperate resolver from driver (#1029)
Jaapel Jul 19, 2024
347e648
Docs update (#1028)
savente93 Jul 19, 2024
ef5830e
achitecture docs
Jaapel Aug 21, 2024
45d4c58
Revert "achitecture docs"
Jaapel Aug 21, 2024
6233d1e
Docs/architecture (#1034)
Jaapel Aug 22, 2024
6eb4aff
change pythonic prefixes (#1037)
Jaapel Sep 3, 2024
62ee67c
update prepare data catalog docs (#1038)
Jaapel Sep 5, 2024
6813f06
Docs/data sources (#1039)
Jaapel Sep 6, 2024
f8b1c4c
Docs/hydromt python (#1042)
Jaapel Sep 13, 2024
a921f28
Docs/architecture refs (#1045)
Jaapel Sep 13, 2024
7eb9ba4
Plugin dev docs (#1043)
savente93 Sep 16, 2024
b4a845e
Add docs for testing plugins (#1050)
savente93 Sep 18, 2024
f83f385
Update Contributing docs (#1051)
savente93 Sep 18, 2024
2c42995
Update export catalog (#1052)
Jaapel Sep 20, 2024
113a861
use predicate arg in vector driver (#1056)
Jaapel Sep 23, 2024
13d7dcd
Update most examples for V1 (#1053)
savente93 Sep 23, 2024
bb088c9
remove ErrorHandlingMethod in favour of NoDataStrategy (#1055)
savente93 Sep 23, 2024
48bcc34
Docs/export data example (#1057)
Jaapel Sep 24, 2024
2b946af
Simplify Install guide (#1058)
savente93 Sep 24, 2024
5b81566
Finish advanced user guide (#1059)
savente93 Sep 24, 2024
20a42e8
update examples focusing on `DataCatalog` (#1060)
Jaapel Sep 25, 2024
956350e
cleanup basic user docs (#1061)
savente93 Sep 25, 2024
f4183a4
Update examples cli (#1062)
Jaapel Sep 25, 2024
2e3d015
Remove clip from cli (#1063)
savente93 Sep 25, 2024
54240b4
Merge branch 'main' into update-v1-with-main
savente93 Sep 26, 2024
b015bb8
fix tests and docs
savente93 Sep 26, 2024
5054238
strip output from jupyter notebooks
savente93 Sep 26, 2024
75dfb80
remove duplicated file
savente93 Sep 26, 2024
81249bf
skip flakey test
savente93 Sep 26, 2024
df00809
fix review mistakes
savente93 Sep 26, 2024
2d7ab9a
Update v1 with main (#1065)
savente93 Sep 26, 2024
54aaf99
allow release without version bump (strip dev postfix)
savente93 Sep 26, 2024
25f7182
fix label name
savente93 Sep 26, 2024
c4fbdb2
mannually bump version number
savente93 Sep 26, 2024
790905b
prepare for release v1.0.0
Sep 26, 2024
c2ef4c4
fix doc artifact creation
savente93 Sep 26, 2024
5eb5b8c
fix docs label
savente93 Sep 26, 2024
6e178c1
pin rio-vrt
savente93 Sep 26, 2024
b1461e8
fix import
savente93 Sep 26, 2024
dcec08b
remove old label ref
savente93 Sep 26, 2024
ddbee90
comment out docker artifact creation
savente93 Sep 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
* text eol=lf
*.gpkg binary
*.yaml text eol=lf
*.yml text eol=lf
*.png binary

# GitHub syntax highlighting
pixi.lock linguist-language=YAML
90 changes: 45 additions & 45 deletions .github/workflows/create-release-artifacts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,8 @@ jobs:

- name: Generate docs
run: |
pixi run --locked -e full-py311 html
pixi run -e full-py311 install
pixi run --locked -e full-py311 doc

- uses: actions/upload-artifact@v4
id: upload-docs-release-artifacts
Expand All @@ -77,53 +78,53 @@ jobs:
path: docs/_build


docker:
runs-on: ubuntu-latest
outputs:
url: ${{ steps.upload-docker-release-artifacts.outputs.artifact-url }}
if: ${{ github.event_name == 'push' || github.event.workflow_run.conclusion == 'success' }}
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to Docker Hub to check credentials
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build and export
uses: docker/build-push-action@v6
with:
outputs: type=docker,dest=/tmp/hydromt-docker-image.tar
tags: hydromt

- name: Run Tests
run: |
docker load --input /tmp/hydromt-docker-image.tar
docker run --env NUMBA_DISABLE_JIT=1 --rm hydromt

- name: Test Binder integration with repo2docker
run: |
pip install jupyter-repo2docker
repo2docker . echo 'success!'


- name: Upload artifact
uses: actions/upload-artifact@v4
id: upload-docker-release-artifacts
with:
name: hydromt-docker-image
path: /tmp/hydromt-docker-image.tar
# docker:
# runs-on: ubuntu-latest
# outputs:
# url: ${{ steps.upload-docker-release-artifacts.outputs.artifact-url }}
# if: ${{ github.event_name == 'push' || github.event.workflow_run.conclusion == 'success' }}
# steps:
# - name: Checkout
# uses: actions/checkout@v4

# - name: Set up Docker Buildx
# uses: docker/setup-buildx-action@v3

# - name: Login to Docker Hub to check credentials
# uses: docker/login-action@v3
# with:
# username: ${{ secrets.DOCKERHUB_USERNAME }}
# password: ${{ secrets.DOCKERHUB_TOKEN }}

# - name: Build and export
# uses: docker/build-push-action@v6
# with:
# outputs: type=docker,dest=/tmp/hydromt-docker-image.tar
# tags: hydromt

# - name: Run Tests
# run: |
# docker load --input /tmp/hydromt-docker-image.tar
# docker run --env NUMBA_DISABLE_JIT=1 --rm hydromt

# - name: Test Binder integration with repo2docker
# run: |
# pip install jupyter-repo2docker
# repo2docker . echo 'success!'


# - name: Upload artifact
# uses: actions/upload-artifact@v4
# id: upload-docker-release-artifacts
# with:
# name: hydromt-docker-image
# path: /tmp/hydromt-docker-image.tar

notify:
needs:
- pypi
- docs
- docker
# - docker
runs-on: ubuntu-24.04
steps:
- name: Checkout
Expand All @@ -133,12 +134,11 @@ jobs:
env:
GH_TOKEN: ${{ github.token }}
pypi_url: ${{needs.pypi.outputs.url}}
docker_url: ${{needs.docker.outputs.url}}
# docker_url: ${{needs.docker.outputs.url}}
docs_url: ${{needs.docs.outputs.url}}
run: |
echo "The new release artifacts have been generated and tested. You can download and inspect them if you want by using the links below: " > comment.txt
echo " - pypi: $pypi_url" >> comment.txt
echo " - docker: $docker_url" >> comment.txt
echo " - docs: $docs_url" >> comment.txt
export PR_ID=$(gh pr list --state "open" --author "app/github-actions" --search "release" --json "number" --jq '. | first | .number')

Expand Down
76 changes: 38 additions & 38 deletions .github/workflows/finish-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,47 +9,47 @@ on:
- 'release/**'

jobs:
publish-docker:
if: github.event.pull_request.merged == true
name: Finalise docker (${{ matrix.flavour }}) release
runs-on: ubuntu-24.04 # latest LTS release
strategy:
fail-fast: false
matrix:
flavour: ['min','slim','full']
concurrency:
group: NEW_RELEASE_DOCKER
cancel-in-progress: false # don't abort while we might be creating a PR or something
steps:
- uses: actions/checkout@v4
name: Checkout code
# publish-docker:
# if: github.event.pull_request.merged == true
# name: Finalise docker (${{ matrix.flavour }}) release
# runs-on: ubuntu-24.04 # latest LTS release
# strategy:
# fail-fast: false
# matrix:
# flavour: ['min','slim','full']
# concurrency:
# group: NEW_RELEASE_DOCKER
# cancel-in-progress: false # don't abort while we might be creating a PR or something
# steps:
# - uses: actions/checkout@v4
# name: Checkout code

- uses: actions/download-artifact@v4
with:
name: hydromt-docker-image
# - uses: actions/download-artifact@v4
# with:
# name: hydromt-docker-image

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
# - name: Login to Docker Hub
# uses: docker/login-action@v3
# with:
# username: ${{ secrets.DOCKERHUB_USERNAME }}
# password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build and push ${{ matrix.flavour }} image
uses: docker/build-push-action@v6
with:
context: .
target: ${{ matrix.flavour }}
push: true
tags: deltares/hydromt:${{ env.version }}-${{ matrix.flavour }}
# - name: Build and push ${{ matrix.flavour }} image
# uses: docker/build-push-action@v6
# with:
# context: .
# target: ${{ matrix.flavour }}
# push: true
# tags: deltares/hydromt:${{ env.version }}-${{ matrix.flavour }}

- name: Build and push latest image
if: matrix.flavour == 'slim'
uses: docker/build-push-action@v6
with:
context: .
target: ${{ matrix.flavour }}
push: true
tags: deltares/hydromt:${{ env.version }}, deltares/hydromt:latest
# - name: Build and push latest image
# if: matrix.flavour == 'slim'
# uses: docker/build-push-action@v6
# with:
# context: .
# target: ${{ matrix.flavour }}
# push: true
# tags: deltares/hydromt:${{ env.version }}, deltares/hydromt:latest

publish-pypi:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -87,7 +87,7 @@ jobs:

gh-release:
needs:
- publish-docker
# - publish-docker
- publish-pypi
- publish-docs
runs-on: ubuntu-latest
Expand Down
8 changes: 6 additions & 2 deletions .github/workflows/prep-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ on:
- patch
- minor
- major
- same
default: minor
description: "Is this a Major, Minor, or Patch release?"
jobs:
Expand Down Expand Up @@ -44,7 +45,7 @@ jobs:
set -e
# check if there already is a release PR open
# parsing of current version
export CURRENT_VERSION=$(grep "version" hydromt/__init__.py | cut -d= -f 2 | tr -d "\" ")
export CURRENT_VERSION=$(grep "__version__" hydromt/__init__.py | cut -d= -f 2 | tr -d "\" ")
export CURRENT_MAJOR=$(echo $CURRENT_VERSION | cut -d'.' -f 1)
export CURRENT_MINOR=$(echo $CURRENT_VERSION | cut -d'.' -f 2)
export CURRENT_PATHCH=$(echo $CURRENT_VERSION | cut -d'.' -f 3)
Expand All @@ -54,6 +55,10 @@ jobs:
## calculate new release number
case $BUMP in

"same")
export NEW_VERSION="$CURRENT_MAJOR.$CURRENT_MINOR.$CURRENT_PATHCH"
;;

"patch")
export NEW_VERSION="$CURRENT_MAJOR.$CURRENT_MINOR.$((CURRENT_PATHCH + 1))"
;;
Expand All @@ -65,7 +70,6 @@ jobs:
"major")
export NEW_VERSION="$((CURRENT_MAJOR + 1)).0.0"
;;

*)
echo "invalid bump: $BUMP"
exit 1
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ on:
- main
- v1
paths:
- tests/*
- hydromt/*
- data/*
- tests/**/*
- hydromt/**/*
- data/**/*
- pyproject.toml
- pixi.lock
- pixi.toml
Expand All @@ -19,9 +19,9 @@ on:
- main
- v1
paths:
- tests/*
- hydromt/*
- data/*
- tests/**/*
- hydromt/**/*
- data/**/*
- pyproject.toml
- pixi.lock
- pixi.toml
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -127,4 +127,8 @@ dask-worker-space/
.envrc
pyrightconfig.json

# VsCode
.vscode/launch.json

# Pixi
.pixi
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
rev: v4.6.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
Expand All @@ -12,7 +12,7 @@ repos:
- id: debug-statements
- id: mixed-line-ending
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.1.2
rev: v0.5.2
hooks:
- id: ruff
args: [--fix, --exit-non-zero-on-fix]
Expand Down
5 changes: 4 additions & 1 deletion .vscode/extensions.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
"ms-python.python",
"ms-python.debugpy",
"ms-python.vscode-pylance",
"ms-python.mypy-type-checker",
"charliermarsh.ruff",
"njpwerner.autodocstring"
"njpwerner.autodocstring",
"stkb.rewrap",
"streetsidesoftware.code-spell-checker"
]
}
13 changes: 0 additions & 13 deletions .vscode/launch.json

This file was deleted.

36 changes: 35 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,39 @@
"source.fixAll": "explicit"
}
},
"editor.formatOnSave": true
"editor.formatOnSave": true,
"editor.wordWrap": "wordWrapColumn",
"editor.wrappingIndent": "same",
"editor.wordWrapColumn": 88,
"files.exclude": {
".mypy_cache": true,
".pixi": true,
".pytest_cache": true,
".ruff_cache": true,
"**/__pycache__": true
},
"mypy-type-checker.importStrategy": "fromEnvironment",
"files.insertFinalNewline": true,
"cSpell.words": [
"dtype",
"GDAL",
"geodataframe",
"geoms",
"geopandas",
"hydromt",
"interbasin",
"ndarray",
"pixi",
"pydantic",
"pygeos",
"pyproj",
"SFINCS",
"subbasin",
"xarray",
"xugrid",
"zarr"
],
"autoDocstring.docstringFormat": "numpy",
"rewrap.autoWrap.enabled": true,
"rewrap.wrappingColumn": 88
}
Loading
Loading