Skip to content
Snippets Groups Projects
Commit dd2a1762 authored by Tobias Meisel's avatar Tobias Meisel
Browse files

Merge branch 'release_0_5_0' into 'main'

[Project] Release 0.5.0

See merge request !242
parents b7e6e4cc 613c3f18
No related branches found
No related tags found
No related merge requests found
......@@ -121,7 +121,6 @@ tests (arch - conda - ogs custom latest) [M]:
- pytest
parallel:
matrix:
- PYTHON_VERSION: "3.10"
- PYTHON_VERSION: "3.11"
- PYTHON_VERSION: "3.12"
- PYTHON_VERSION: "3.13"
......@@ -153,6 +152,8 @@ tests (win - pip) [R]:
rules:
- *regression-rules
needs: []
variables:
MPLBACKEND: Agg # non-interactive backend for matplotlib
before_script:
- python -m venv .venv
- .venv\Scripts\Activate.ps1
......@@ -193,7 +194,7 @@ docs preview [M]:
- pip install -e .[docs]
- *pip-setup-extra-headless
script:
- make docs SPHINXOPTS="--keep-going -n -j 4" > sphinx_output.log 2>&1
- make docs SPHINXOPTS="--keep-going -n -j 4" | tee sphinx_output.log
- echo "Counting warnings in Sphinx output..."
# Count lines with "WARNING" in the Sphinx log
- warning_count=$(grep -c "WARNING" sphinx_output.log || true)
......
......@@ -5,6 +5,7 @@
maxdepth: 3
---
0.x (upcoming release) <ogstools-0.x>
0.5.0 <ogstools-0.5.0>
0.4.0 <ogstools-0.4.0>
0.3.1 <ogstools-0.3.1>
0.3.0 <ogstools-0.3.0>
......
# OGSTools 0.5.0 Release Notes
- Recommended OGS Version: 6.5.4
## API breaking changes
- MeshSeries.data --> MeshSeries.values
- MeshSeries.clear --> MeshSeries.clear_cache
- In aggregate functions func str is replaced by callables (e.g. numpy.min)
- meshlib.gmsh_meshing.remesh_with_triangle --> meshlib.gmsh_meshing.remesh_with_triangles
- msh2vtu python interface was replaced with meshes_from_gmsh
- CLI tool msh2vtu is not affected by this
- parameter keep_ids was removed (in our OGS world there is no reason to keep the gmsh data names and the wrong data types in the meshes, which would happen if k was used)
- parameter log_level was changed to log (True or False)
- removed:
- MeshSeries.spatial_data_unit/spatial_output_unit/time_unit (see
MeshSeries.scale())
- plot.linesample/linesample_contourf
- meshlib.data_processing.interp_points/distance_in_profile/sample_polyline
(see updated line sample example)
## Bugfixes
- Failed sub library imports led to incomplete and unhandled package import
- MeshSeries was unable to handle xdmf with just one timestep correctly
- MeshSeries kept the hdf5 file handle open - parallel read access was not possible
- OMP_NUM_THREADS was not working on Windows
- Feflow mesh did not allow mixed celltypes
- plot functions had sometimes different color schemes in the color bar
- Tortuosity was not a medium property
- BHE mesh (z coordinate negative)
## Features
- MeshSeries gets copy() method.
- MeshSeries gets transform() method, that applies an arbitrary transformation function to all time steps.
- MeshSeries get extract() method to select points or cells via ids
- MeshSeries can be sliced to get new MeshSeries with the selected subset of timesteps
- MeshSeries gets a modify function that applies arbitrary function to all timestep - meshes.
- difference() between two meshes is now possible even with different topologies
- Project write_input, path can be specified
- MeshSeries gets scale() method to scale spatially or temporally
- variables.get_preset will now return a Variable corresponding to the spatial
coordinates if given "x", "y" or "z"
- plot module gets line() function as a general purpose 1D plotting function
- plot.setup get spatial_unit and time_unit which are used for labeling
## Infrastructure
- Python 3.13 support (CI testing)
- Testing of all supported Python version 3.10-3.13 (pip and conda)
- Testing with pinned dependencies in regression tests and with open dependencies in maintenance tests
- msh2vtu - complete overhaul
## Examples
- All examples use `import ogstools as ot`. To not be confused with ogs python bindings
# Footnotes
- All related Merge requests are tagged with 0.5.0 Release https://gitlab.opengeosys.org/ogs/tools/ogstools/-/merge_requests?scope=all&state=merged&milestone_title=0.5.0%20Release
......@@ -4,35 +4,8 @@ This is not released yet!
## API breaking changes
- MeshSeries.data --> MeshSeries.values
- MeshSeries.clear --> MeshSeries.clear_cache
- meshlib.gmsh_meshing.remesh_with_triangle --> meshlib.gmsh_meshing.remesh_with_triangles
- msh2vtu python interface was replaced with meshes_from_gmsh
- CLI tool msh2vtu is not affected by this
- parameter keep_ids was removed (in our OGS world there is no reason to keep the gmsh data names and the wrong data types in the meshes, which would happen if k was used)
- parameter log_level was changed to log (True or False)
- removed:
- MeshSeries.spatial_data_unit/spatial_output_unit/time_unit (see
MeshSeries.scale())
- plot.linesample/linesample_contourf
- meshlib.data_processing.interp_points/distance_in_profile/sample_polyline
(see update line sample example)
## Bugfixes
## Features
- MeshSeries gets copy() method.
- MeshSeries gets transform() method, that applies an arbitrary transformation function to all time steps.
- MeshSeries get extract() method to select points or cells via ids
- MeshSeries can be sliced to get new MeshSeries with the selected subset of timesteps
- difference() between two meshes is now possible even with different topologies
- MeshSeries gets scale() method to scale spatially or temporally
- variables.get_preset will now return a Variable corresponding to the spatial
coordinates if given "x", "y" or "z"
- plot module gets line() function as a general purpose 1D plotting function
- plot.setup get spatial_unit and time_unit which are used for labeling
## Infrastructure
- Python 3.13 support (CI testing)
- Testing of all supported Python version 3.10-3.13 (pip and conda)
- Testing with pinned dependencies in regression tests and with open dependencies in maintenance tests
......@@ -41,7 +41,7 @@ dependencies = [
# meshing algorithm changed with this version
"typeguard>=4.0.0",
"lxml>=4.6.0",
"ogs>=6.5.3",
"ogs>=6.5.4",
"pandas>=2.2.3",
]
......@@ -139,7 +139,7 @@ pinned = [
"nbformat==5.10.4",
"nest-asyncio==1.6.0",
"numpy==2.2.1",
"ogs==6.5.3",
"ogs==6.5.4",
"overrides==7.7.0",
"packaging==24.2",
"pandamesh==0.2.2",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment