Skip to content

Changelog

0.5.1 (2023-04-17)

Feat

  • Add the quantity nudge_salinity_temperature to ext old file header.
  • Support the old style external forcings file
  • Add support for several coastal MDU keywords
  • Add support for .tim files and .bc files in the structure file
  • Support meteo blocks in external forcings file (#477)
  • Remove indentation from MDU file
  • Add 4 missing 1D2D settings to FMModel
  • Support *.tim files
  • Add XYN classes to public API (#492)
  • Include old and new observation crossections into MDU FMModel.output class (#470)
  • Support observation crosssection .pli via existing PolyFile class (#464)
  • Add support for 3D Z-sigma settings in MDU
  • Support loading+saving models with configurable OS path style formats (#361)
  • Add support for observation point xyn files (#472)
  • Support filepath as str besides Path for all model classes under FileBasedModel (#469)
  • Add validation for NaN values in datablocks

Fix

  • Fixed issues with the new release script
  • Special characters should be parsed correctly from file
  • MDU keywords such as 1d2dLinkFile are written to file without comments (#528)
  • UGRID network files without faces should be accepted
  • correct handling of whitespace and comments in observation point .xyn files (#508)
  • Fix resolving of relative paths containing .. when not using the resolve_casing option.
  • ignore trailing values or text on polyline data lines to better support boundary polyfiles (#482)
  • Reading invalid formatted plifile should raise error instead of warning
  • polyline serializer should print empty trailing comment lines

Refactor

  • Make sure of the new Pydantic 1.10 functionality

0.4.1 (2023-01-26)

Fix

  • _add_nodes_to_segments fixed (#440)

0.4.0 (2023-01-23)

Feat

  • Remove io namespace and add convenient imports/API at several directory levels (#438)
  • Added the option for all supported files to customize the float formatting when saving (#406)
  • Suppress warning in polyfile parser that the white space at the start of the line is ignored (#409)
  • Change data block default spacing from 4 to 2 (#407)
  • Add support for non-recursively loading models (#401)

Fix

  • Fixed polylinefile validation for Structure and its subclasses (#416)
  • Rename variable in generate_nodes function (#437)
  • Ensure that QuantityUnitPairs that are not part of a vector are correctly parsed (#420)
  • Enum values are incorrectly written to files (#403)

Refactor

  • Small refactoring of the VectorQuantityUnitPairs and VectorForcingBase (#422)
  • Move the base module in XYZ back to IO (#418)
  • Refactored support for vectors in .bc files (#394)

0.3.1 (2022-10-25)

Feat

  • option resolve_casing to fix filepath casing between different OS's.
  • Added support for the use of vectors within forcing models with a t3d or timeseries function type.
  • Added possibility to take structure positions into account when discretizing 1d mesh
  • Add support for branches.gui file (#333)
  • Drop extra fields for INIBasedModels if they are not in file format definition
  • Support crs file for observation cross sections (#289)
  • implement mesh generation for pipes (#294) and fix support different reference system (#298) (#299)
  • removed the writeBalanceFile keyword from the mdu
  • support copying generic files/models (#281)
  • Support extra MDU sections (#284)
  • add binder support with a dockerfile (#264)

Fix

  • Add backwards compatibility for the old "percentage from bed" vertical position type.
  • Fix freeze when printing a ForcingModel with multiple [forcing] blocks by omitting the datablocks.
  • T3D header is not correct (#356)
  • Change AutoStart type from bool to int (#349)
  • Skip serialization of empty INI properties when configured (#336)
  • Net writer should not produce NaN as fill values (#363)
  • Change type of xcoordinates and ycoordinates in Lateral class from int to float (#351)
  • Fix that single structure in StructureModel class is correctly converted to a list (#352)
  • Ensure poly files can be saved (#344)
  • write correct branchorder to net file (#335)
  • add zdatum vertical position type (#324)
  • parse vertical positions to list (#325)
  • make has_z_values parameter optional in polyfile.parser.read_polyfile (#312)
  • Remove unnessary indent in .bc datablocks (#304)
  • Fix the types of 4 fields in the MDU file (#283)

Refactor

  • Location specification root validator (#347)

0.3.0 (2022-07-11)

Fix

  • Add water level location validation DamBreaks
  • allow empty file paths in the .fnm file
  • Add modeltype 21 to RR node for open water precipitation/evaporation (#261)
  • filemodel: ResolveRelativeMode is incorrectly set when reading a model with 'pathsRelativeToParent' set to false (#259)

Feat

  • network: additional mesh funcs dhydamo
  • support .bc files and more in lateral discharge (#244)
  • add support for observation point ini file (#236)
  • support .bc files and more in lateral discharge

Refactor

  • rr: place all RR-related code+tests in own rr subpackage (#235)
  • remove dead code of _process_edges_for_branch

0.2.1 (2022-03-15)

Fix

  • parser: correctly parse model input fields with leading digits, such as 1D2DLinkFile.
  • parser: allow empty friction specification in all crossdef types. (#206).

0.2.0 (2021-12-17)

Added

  • RainfallRunoff files: [NodeFile][hydrolib.core.io.rr.topology.models.NodeFile] (#138) and [LinkFile][hydrolib.core.io.rr.topology.models.LinkFile] (#140)
  • D-Flow FM files:
    • Initial field files: [IniFieldModel][hydrolib.core.io.inifield.models.IniFieldModel], also added 1D Field INI format: [OneDFieldModel][hydrolib.core.io.onedfield.models.OneDFieldModel] (#119).
    • 1D Roughness INI files: [FrictionModel][hydrolib.core.io.friction.models.FrictionModel] (#118).
    • Storage node files: [StorageNodeModel][hydrolib.core.io.storagenode.models.StorageNodeModel] (#131).
    • General structure: [GeneralStructure][hydrolib.core.io.structure.models.GeneralStructure] (#79).
  • Many additions to the API documentation.

Changed

  • All classes that have fields with "keyword values" (such as frictionType = WhiteColebrook) now use Enum classes for those values. See for example [FrictionType][hydrolib.core.io.friction.models.FrictionType] and [FlowDirection][hydrolib.core.io.structure.models.FlowDirection] (#98)
  • All crosssection definition type now supported as subclasses of [CrossSection][hydrolib.core.io.crosssection.models.CrossSectionDefinition] (#117)
  • Cross section definition and location classes have been moved from hydrolib.core.io.ini.models to hydrolib.core.io.crosssection.models. (#149)
  • Changed behavior for file paths in saved files (#96). More information about: technical background and a tutorial.

Fixed

  • Too strict validation of optional fields in culvert (#75), pump (#76), weir (#77), orifice (#78).
  • Floating point parser breaks reading/writing of keyword UnifFrictCoef1D2D (#103)
  • DIMR config has invalid control element for a single component model (#127)
  • DataBlockINIBasedModel.datablock should also support strings (astronomic in .bc files) (#137)
  • Saving .bc files incorrectly writes repeated key names as a semicolon-separated list (#101)
  • Do not write absolute file paths to file (#96)

0.1.5 (2021-11-02)

0.1.4 (2021-11-02)

0.1.3 (2021-08-05)

Fix

  • netcdf serialization path.

0.1.2 (2021-08-05)

Fix

  • test_version: Fix updated version

0.1.1 (2021-08-05)

Fix

  • NetworkModel: Fix default init of Network within NetworkModel
Back to top