Changelog¶
0.3.3 (unreleased)¶
Contributors to this version: Ludwig Lierhammer (@ludwiglierhammer)
New features and environments¶
Breaking changes¶
0.3.2 (2023-04-21)¶
Contributors to this version: Ludwig Lierhammer (@ludwiglierhammer), Trevor James Smith (@Zeitsperre)
Announcements¶
New features and environments¶
do_date_check now supports flexible input parameters year_init and year_end that define valid year range (#184)
Breaking changes¶
Internal changes¶
Updated the project template and boilerplate code to address configuration issues and benefit from new workflows/conventions (#161):
A new workflow has been added to automatically accept minor/patch updates to GitHub Actions and Python deps coming from Dependabot.
tox.ini` has migrated to tox.toml (new standard).
pyproject.toml and tox.toml now use [dependency-groups] to manage non-end-user dependency lists.
The Makefile recipes are much cleaner and now manage some dependency installation calls.
Various dependency updates.
sphinx documentation now uses internal data types from “auxiliary.py” (#143, #185)
correct reporsitroy url in documentation (#185)
cdm_reader_mapper has been dropped from the dependencies (#183, #188)
copy code snippet to load files from GLAMOD test data repo from cdm_reader_mapper (used in testing suite only) (#183, #188)
Bug fixes¶
0.3.1 (2026-03-06)¶
Contributors to this version: Ludwig Lierhammer (@ludwiglierhammer), John Kennedy (@jjk-code-otter) and Trevor James Smith (@Zeitsperre)
New features and enhancements¶
New functions
do_multiple_sequential_checkanddo_multiple_grouped_checkanalog todo_multiple_individual_checkto run multiple checks at once (#32, #95)Call both plotting functions
latitude_longitude_plotandlatitude_variable_plotdirectly frommarine_qc(#95)New functions
do_landlocked_checkanddo_maritime_checkto test whether a position is on land/sea using a land-sea mask (#130, #141)decorator
external_clim.inspect_climatologynow supports str, path-like andxarrayobjects as input (#141)new validator to validate call signature types in multiple_checks (#15, #128)
Breaking changes¶
rename function
do_multiple_row_checktomultiple_individual_check(#95)rename module
marine_qc.multiple_row_checkstomarine_qc.multiple_checks(#95)multiple_checks now raises errors if qc_dict or preproc_dict has an invalid structure (#119, #128)
multiple_checks now raises errors if input directory values do not match the available QC functions or their arguments (#119, #128)
Internal changes¶
make multiple checks more flexible using several helper functions (#14, #95)
add plotting routines to documentation’s API reference (#95)
add helper functions to documentation’s API reference (#95)
add section “More theoretical information” to documentation (#95)
The numpydoc linting tool has been added to the linting checks, and the pre-commit configurations (#53, #59, #120)
The mypy type checking has been added to the pre-commit configurations (#59, #121)
Documentation is now build without any warning messages (#96, #122)
readthedocs.yaml: set fail_on_warnings to “true” (#61, #122)
new validation method validations to validate call signature types for all functions (#128)
multiple_checks: merge helper functions _prepare_preprocessed_vars and _prepare_qc_functions into _prepare_functions (#128)
multiple_checks: rename helper function _validate_and_normalize_input to _normalize_input (#128)
multiple_checks: replace concrete dict types with Mapping in function type hints (#128)
new helper function auxiliary.ensure_arrays to ensure that all inputs are NumPy arrays and to increase test coverage (#128)
new marine_qc data types: ScalarNumberType, SequenceNumberType and ValueNumberType (#128)
remove cdm_reader_mapper.DataBundle-related tests (#139, #146)
add unit test for external_clim and increase test coverage (#17, #154)
0.3.0 (2026-03-06)¶
See 0.3.1
0.2.0 (2025-10-21)¶
Contributors to this version: Ludwig Lierhammer (@ludwiglierhammer)
Announcements¶
First release on zenodo (#66)
0.1.0 (2025-10-21)¶
Contributors to this version: Ludwig Lierhammer (@ludwiglierhammer), John Kennedy (@jjk-code-otter) and Trevor James Smith (@Zeitsperre)
Announcements¶
This marine QC repository is a copy of the results of https://github.com/glamod/glamod-marine-processing/pull/117. This repository replaces glamod_marine_proccesing.qc_suite.modules as an independent package (#6).
License and Legal¶
CI changes¶
New features and enhancements¶
do_night_check: reversedo_day_check(#21)Added
get_value_fastfor extracting values from climatologies (#24)Added
mds_lat_to_yindex_fastfor extracting values from climatologies (#24)Added
mds_lon_to_xindex_fastfor extracting values from climatologies (#24)Implement plotting routines for QC outcomes (#24):
marine_qc.plot_qc_outcomes.latitude_variable_plot: Plot a graph of points showing the latitude and value of a set of observations coloured according to the QC outcomes.
marine_qc.plot_qc_outcomes.latitude_longitude_plot: Plot a graph of points showing the latitude and longitude of a set of observations coloured according to the QC outcomes.
decorator post_formt_return_type has new parameters (#24):
dtype: Desired data type of the result. Default is int.
multiple: If True, assumes the function returns a sequence of results (e.g., a tuple), and applies format_return_type to each element individually.
Both do_bayesian_buddy_check and do_mds_buddy_check allow a list of row numbers to be skipped (ignore_index) (#24).
Internal changes¶
Remove both jupyter notebook specific (nbqa-pyupgrade, nbqa-black, nbqa-isort, nbstripout) and json-related (pretty-format-json) pre-commit hooks (#7)
Replace assert statements with if statement raising error messages (#7)
Split some try statements into single if statements giving warnings (#7)
Fixing some typos in docstrings and comments (#7)
Improved unit test coverage (#9)
combine time_control.day_in_year and time_control.dayinyear to time_control.day_in_year (#9)
new function time_control.valid_month_day to validate month and day information (#9)
extract daytime check from do_day_check and do_night_check (#21)
vectorised many of the QC checks to speed up processing on large datasets (#24)
moved to using pyproj for spherical geometry calculations (#24)
removed dependence on old Climatology class (#24)
utility functions moved from qc_sequential_reports to track_check_utils (#24)