threedi-modelchecker 2.18.19.dev0__tar.gz → 2.18.19.dev1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/CHANGES.rst +1 -0
- {threedi_modelchecker-2.18.19.dev0/threedi_modelchecker.egg-info → threedi_modelchecker-2.18.19.dev1}/PKG-INFO +1 -1
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/__init__.py +1 -1
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/cross_section_definitions.py +6 -1
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/other.py +7 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_checks_cross_section_definitions.py +5 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1/threedi_modelchecker.egg-info}/PKG-INFO +1 -1
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/LICENSE +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/MANIFEST.in +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/README.rst +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/pyproject.toml +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/setup.cfg +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/__init__.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/base.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/factories.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/location.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/raster.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/checks/timeseries.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/config.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/exporters.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/interfaces/__init__.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/interfaces/raster_interface.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/interfaces/raster_interface_gdal.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/interfaces/raster_interface_rasterio.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/model_checks.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/scripts.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/__init__.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/conftest.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/data/__init__.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/data/empty.gpkg +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/data/empty.sqlite +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/factories.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_checks_base.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_checks_factories.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_checks_location.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_checks_other.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_checks_raster.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_checks_timeseries.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_error_messages.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_exporters.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker/tests/test_model_checks.py +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker.egg-info/SOURCES.txt +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker.egg-info/dependency_links.txt +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker.egg-info/entry_points.txt +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker.egg-info/requires.txt +0 -0
- {threedi_modelchecker-2.18.19.dev0 → threedi_modelchecker-2.18.19.dev1}/threedi_modelchecker.egg-info/top_level.txt +0 -0
|
@@ -9,6 +9,7 @@ Changelog of threedi-modelchecker
|
|
|
9
9
|
- Add check (E1028 and E1209) for matching time units for boundary conditions (nens/rana#3619)
|
|
10
10
|
- Add check (W0220) that warns when the sum of the weights in MeasureMap for a single control are not 1+/-0.01 (nens/rana#3597)
|
|
11
11
|
- Add check (W0058) that warns when a closed culvert or pipe is embedded (nens/threedi-modelchecker#408)
|
|
12
|
+
- Fix bugs that could cause checks W0053, I0057, W0058 and W0098 to crash (nens/rana#3933)-
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
2.18.18 (2026-04-10)
|
|
@@ -309,7 +309,10 @@ class CrossSectionYZIncreasingWidthIfOpenCheck(CrossSectionBaseCheck):
|
|
|
309
309
|
|
|
310
310
|
|
|
311
311
|
def get_widths_heights_for_tabulated_record(record):
|
|
312
|
-
if
|
|
312
|
+
if (
|
|
313
|
+
record.cross_section_shape is None
|
|
314
|
+
or not record.cross_section_shape.is_tabulated
|
|
315
|
+
):
|
|
313
316
|
raise ValueError(
|
|
314
317
|
"get_widths_heighs_for_tabulated_record cannot handle tabulated shaptes"
|
|
315
318
|
)
|
|
@@ -331,6 +334,8 @@ def get_widths_heights_for_tabulated_record(record):
|
|
|
331
334
|
|
|
332
335
|
|
|
333
336
|
def cross_section_configuration_for_record(record):
|
|
337
|
+
if record.cross_section_shape is None:
|
|
338
|
+
return None, None, None
|
|
334
339
|
if record.cross_section_shape.is_tabulated:
|
|
335
340
|
# Handle empty cross section table by returning all None to prevent issues in parsing
|
|
336
341
|
# Note that CrossSectionNullCheck already checks for this
|
|
@@ -468,6 +468,13 @@ class OpenChannelsWithNestedNewton(BaseCheck):
|
|
|
468
468
|
invalids.append(record)
|
|
469
469
|
return invalids
|
|
470
470
|
|
|
471
|
+
def to_check(self, session: Session):
|
|
472
|
+
return (
|
|
473
|
+
super()
|
|
474
|
+
.to_check(session)
|
|
475
|
+
.where(self.table.c.cross_section_shape.isnot(None))
|
|
476
|
+
)
|
|
477
|
+
|
|
471
478
|
def description(self) -> str:
|
|
472
479
|
return (
|
|
473
480
|
f"{self.column_name} has a closed cross section definition while "
|
|
@@ -642,6 +642,11 @@ def test_cross_section_configuration_not_tabulated_raise():
|
|
|
642
642
|
{"cross_section_table": ""},
|
|
643
643
|
(None, None, None),
|
|
644
644
|
),
|
|
645
|
+
(
|
|
646
|
+
None,
|
|
647
|
+
{},
|
|
648
|
+
(None, None, None),
|
|
649
|
+
),
|
|
645
650
|
],
|
|
646
651
|
)
|
|
647
652
|
def test_cross_section_configuration_for_record(session, shape, kwargs, expected):
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|