Skip to content

Release announcements

HenrikSpa edited this page Aug 21, 2024 · 8 revisions

Release announcements

Version 1.8.0

  • Support for FieldForm:
    • The feature "Export to Fieldlogger format" now supports exporting to the new app FieldForm.
  • Adds support for the python package Matplotlib 3.8.4, which is installed using QGIS OSGeo4W network installer.
  • Added column "source" to table w_levels_logger table. Can be used to visually separate logger series in the logger editor.
  • Added column "type" to table comments. Can be used to group types of comments.

Version 1.7.0

Most important changes:

  • Fixes bugs after after new Python-version where float is not implicitly converted to int.
  • Timezone support for DiverofficeImport, LeveloggerImport and HobologgerImport. Allows automatic conversion to the database timezone (see howto below).
  • Timezone support for LoggerEditor which converts the date-time of the manual measurements on-the-fly during plotting to match the logger data for improved matching, (see howto below).

Timezone support: Timezone can be set for the date_time-column for tables w_levels_logger and w_levels. To add this to existing databases, follow these steps:

  1. Load the Midvatten table "about_db" to QGIS using QGIS "AddLayer > Add SpatiaLite Layer" for SpatiaLite databases or "AddLayer > Add PostGIS Layers" for PostGIS databases.
  2. Open the attribute table for the loaded about_db layer. Go the row which equals tablename=w_levels_logger and columnname=date_time.
  3. Edit the column description of the row which equals tablename=w_levels_logger and columnname=date_time by adding " (TIMEZONE)" at the end of the text, ex: "Date and Time for the observation (UTC+1)". The timezone for logger data in w_levels_logger should be an UTC timezone. Using local time with daylight savings might otherwise cause problems during the shift from/to daylight savings.
  4. Edit the column description of the row which equals tablename=w_levels and columnname=date_time by adding " (TIMEZONE)" at the end of the text, ex: "Date and Time for the observation (Europe/Stockholm)".

The TIMEZONE must either be in UTC or a timezone supported by Python pytz (https://pypi.org/project/pytz/).

Database changes

Version 1.6.10

Database changes

  • Removed trailing spaces from capacity in zz_capacity and zz_capacity_plots (handled using strip and trim instead).

General changes

  • Fixes bug where obs_points and obs_lines were not editabel (Loaddefaultlayers now loads obs_points and obs_lines instad of view_obs_points and view_obs_lines) (Requires user to reload layers using "Load default db-layers to qgis")
  • Better database version comparison.
  • Fix to close connections more frequently when the connection is not used anymore.
  • Fix to always turn of waiting cursor in general_exception_handler.

Updates in existing features

  • CompactWQualReport: Feature to allow the user to choose header columns and sort order.
  • DiverofficeImport: Feature to choose target UTC-offset for conversion during import.
  • ExportFieldlogger: Fixes #340 (bug where empty row in list caused error)
  • General csv import:
    • Fixes import problem to w_qual_field-table using PostGIS/PostgreSQL-database (#338)
    • Fixes bug where csv import dialog object was destroyed in the middle of import.
  • General report: Fixes bug #336. (general report failed when water level data was missing in postgresql)
  • List of values from selected features: Fixes problem when QVariant was NULL.
  • PrepareForQgis2Threejs: Added support for postgis databases.
  • Sectionplot:
    • Fixes labeling problem #334.
    • Fixes a bug which causes an (otherwise hidden) error message (but didn't affect the functionality).
  • Stratsymbology: Added waiting cursor when loading symbology.
  • Stratigraphy plot: Fixes printing bug.

Version 1.6.7-1.6.9

  • Bug fixes.

Version 1.6.6

  • Major update of imports in modules to increase code reusability from outside the plugin.
  • Compact w-qual report
    • Made the column report optional to allow reports from w_qual_field.
    • Fixes bug when using aggregation other than concat.
  • Midvattensettings:
    • Fixes bug after closing the settings dialog (fixes #332).
  • Sectionplot:
    • Refactoring.
    • Feature to write layer annotation at the edge or center of the bar.
    • Added option to chose water level base on sql WHERE condition (see tooltip for water level square).
    • Fixes bug where error message was printed too many times.
    • Probably fixes #333 (supporting multiple variations of function "line locate point").
    • Fixes bug where changing water level label in figure options on navigation toolbar didn't change legend text.
    • Fixes bug where layer texts was NULL was written to plot.
    • Fixes bug with interactive water level plot.
  • Export data:
    • Fixes bugs related to the optional tables s_qual_lab and w_qual_logger.
  • FieldloggerExport:
    • Fixes bug where adding layer to QGIS caused an error message.
  • CompactWQualReport:
    • Fixes bug where default table and column not working.
  • CompactWQualReport:
    • Fixes missing column headers.

Version 1.6.5

  • Database:
    • Added index to w_levels_logger and w_flow for perhaps increased read performance.
    • Added constraint to w_qual_field to not get duplicates when unit is NULL.
    • Plot symbol colors: Changed symbol color for till and clay from yellow to cyan and beige for qt-colors (affecting strat symbology and the old stratigraphy plot).
    • Added support for non-essential data tables s_qual_lab and w_qual_logger. Sql for creating them is in definitions\create_db_extra_data_tables.sql
  • Layer symbology:
    • Added triangle symbol (obs_p_w_lvl_logger) for displaying the existance of logger data for an obsid.
  • LoggerEditor:
    • The features "Calculate logger w level from logger water head" renamed to "Edit water level logger data".
    • New feature to select nodes and altering time series by moving nodes up and down.
    • Changed default search radius to 60 minutes.
    • Period range (now Seleted period) is now inclusive (and nodes inside selected period are marked to visualize this).
  • Stratigraphy symbology:
    • Separated labels and symbols into separate layers.
    • Added layer "Layer texts" for displaying stratigraphy labels on map.
    • The else layer is deactivated by default in layers.
    • Bedrock label as >X when drillstop not like bedrock or equivalent.
    • Added option to filter selected obsids.
    • Reduced shadow opacity to 40 from 70.
  • Bug fixes:
    • Fixed bug where a missing Postgis table caused a plugin-crash.
  • Gui fixes: Fixed margins for several features after new QGIS versions changed them.
  • Interlab4 import:
    • Fixed bug when closing save metadata without selecting file.
    • Fixed bug when number contained space.
  • Compact water quality report: Fixes bug where "Data from selected obsids in sql table" didn't work.
  • Water quality report: Fixes bug where numeric sorting column couldn't be used.
  • Sectionplot:
    • Fixed bug where obsid was not visible when plotting hydro colors.
    • Fixes bug where obsid label was not written but the bar was plotted.
    • Adjustment for new pandas version (water levels interactive mode).
    • Fixed better error messages when dems are omitted.
  • List of values from selected features: Added checkbox to copy to clipboard.
  • Calculate Aveflow function: Added a pandas variant which keeps the comments.
  • Finddateformat: Added dateformat 'Ymd H:M'.

Version 1.6.4

Database changes

  • Added a new table "zz_interlab4_obsid_assignment" to assign obsid automatically during interlab4 import..

Completely new features

  • New QGIS-symbology to visualize stratigraphy on the map: Utilities / Load stratigraphy symbology to qgis.
    • This feature provides a good overview over stratigraphy layers without the need to produce section plots!
  • Feature to load data tables to qgis: Utilities / Load data tables to qgis. Loads w_levels_logger, meteo, vlf_data and seismic_data to qgis.

Updates in existing features

  • Fieldlogger export:
    • Now supports exporting locations directly from a vector layer.
  • Interlab4 import:
    • Added support for the new table "zz_interlab4_obsid_assignment" to assign obsid automatically during interlab4 import by checking the new box "Assign obsid using table"
    • Greatly improves the row filtering performance.
    • Fixes bug where values were NaN.
    • Changed logic for duplicate parameters. The smallest unit is now used as the main parameter (ng/l < µg/l < mg/l).
  • db_utils:
    • Fixes postgis connection after changes in QGIS >=3.10.
  • Sectionplot:
    • Added interactive mode for water levels.
    • Adjustment for new pandas version.
    • Fixes obsidlabel positioning.
    • Fixes bug with water level plot labels.
    • Added support for more linetypes for the profile line when plotting vlf or seismic data.
    • Updates for seismic data: Added feature to plot groundwater. Changed symbology to marker='+' and now plot connected lines.
    • Added error message when there was more than one layer named obs_points.
  • ExportData:
    • Now supports exporting from PostgreSQL+PostGIS to SQLite+Spatialite.
  • GeneralCsvImport:
    • Changed parser to csv.reader to support '"' as quotechar.
    • Bug fixes.
  • Loggercalibration:
    • Fix to hopefully reduce initialization time (The feature had very long load time in Windows under certain circumstances).
  • Piperplot:
    • Added a new version of piperplot that follows the more common triangle/diamond layout.
    • Fixes +-markers that appeared more than once due to bordercolor black.
    • Added marker edge to default style.
    • Moved some axis labels and changed label fontsize.
  • Diveroffice/HOBO-logger/Levelogger import:
    • Added export csv button.
  • Diveroffice Import:
    • Added support for more conductivity headers.
  • Customplot:
    • Removed midv_*-settings from the matplotlib style to stop constant error messages. They are now hard coded in midvatten_defs instead.
  • List of values from selected features:
    • Now supports int and float columns as well.
  • Compact water quality report:
    • Added feature to print parameter+unit and date_time as rows.

Version 1.6.2

Updates in existing features

  • SectionPlot:
    • New ui for sectionplot. Settings now located in separate tab. The settings tab can be floated and moved also.
    • If no section line is selected, Sectionplot now plots like the Stratigraphyplot. (Thanks to Simon O'Connor!)
    • Capacity colors can now be used in the same way as Stratigraphyplot. (Thanks to Simon O'Connor!)
    • Hydroexplanation (capacity explanation) can now be used as text for layers. (Thanks to Simon O'Connor!)
    • Sectionplot can now (hopefully) be maximized. (Thanks to Simon O'Connor!)
    • Plotsize now set in template in inches in "rcParams": {"figure.figsize": [6.4, 4.8]} and by checking radiobutton Plotsize: "Fixed".
    • Sectionplot can now be used with one obsid. No longer limited to more than one.
    • Sectionplot can now be used with only a selected line layer (for plotting DEMS and seismic).
    • Removed redraw button. Legend updates automatically when clicking NavigationToolbar Apply button.
  • Customplot: plot name annotation when clicking on plots (while tools from navigation toolbar are not being used).
  • List of values from selected features: Added filter checkbox.
  • Compact water quality report: New options on sorting rows and columns.
  • Csv import: Added checkbox to ignore not null restrictions. Useful for Postgres importes with serial primary key columns

Version 1.6.1

  • Mostly bug fixes.

Version 1.6

A first public version of Midvatten plugin for QGIS 3 is now released with version number 1.6.0! Most of the features are working the same way as before. Some have minor changes. Many bugs and glitches have been fixed, but there could still be some bugs in rarely visited parts of the codebase and features.

Most important difference

  • view_obs_points and view_obs_lines:
    • The most significant, and maybe temporary, change to the plugin is the introduction of editable spatial views view_obs_points and view_obs_lines FOR SQLITE/SPATIALITE databases. The views replaces the tables obs_lines and obs_points in the QGIS layer list, but are named obs_points and obs_lines as before. The introduction of the views should not affect the workflow in Midvatten plugin in every way. The only visible difference is the rowid column in the attribute tables. These views have to be added to existing databases, see Add view_obs_points as workaround for qgis bug #20633 for more information about this. PostGIS databases are unaffected by this.

Plugin changes

Completely new features

  • view_obs_points and view_obs_lines, see above.

Updates in existing features

  • Everything is adjusted to python3 and Qt5 due to QGIS3.
  • Custom Plot:
    • Uses matplotlib styles instead of the previous custom templates for changing the layout.
    • Settings moved to separate tab.
    • Fixed figure size is not set in inches in the attribute figure.figsize the current matplotlib style in combination with the new setting Plotsize: Fixed.
  • General csv import now supports importing geometry columns from vector layers.
  • Fieldlogger import: Instrument and unit now filled in based on the last used instrument for the current staff.
  • Interlab4 import: Duplicate parameters now imported as 'Parameter (duplicate 1)' (2, 3, etc).
  • Interlab4 import: Parsed files can be dumped as csv file.
  • Stratigraphy plot: Obsids that has no stratigraphy information but has length will now be plotted as empty bars.
  • The utility List of obsids from selected features now changed into _ist of values from selected features and now supports printing of any column, not just obsid.

Version 1.5

The version 1.5 is now released for public use. This version contains only plugin changes, no changes to the database.

Plugin changes

This list contains the most important changes only.

Removed features

  • The older import features hard coded for each database table has been removed and are now fully replaced by general csv import.

Completely new features

  • PostgreSQL/PostGIS support!
    • All features in the plugin except "Export to spatialite" and "Backup database" are assumed to be working.
    • The plugin doesn't create or maintain the PostgreSQL database itself, this is up to the user. The plugin can be used to Populate a PostgreSQL database to a new Midvatten project DB and then use the database as a regular Midvatten database.
    • Backup of the PostgreSQL database is not included in this version, this is up to the user!
    • See Populate a postgis database to a new Midvatten project DB for more information.
  • Custom general report: A report tool like the General report tool but with more adjustable settings.
  • Utility to calculate statistics for chosen column in chosen table.
  • Import Levelogger: Import function like diver office import but for Levelogger csv files.

Updates in existing features

  • Background adjustmets for all features to support both SQLite/Spatialite and PostgreSQL/PostGIS.
  • Midvatten settings dialog has been updated to support the use of PostGIS databases.
  • Custom plot: Feature to filter list by word. Feature for dependency between the filters. Feature for selecting based on selection in a QGIS layer. Added rolling mean center parameter. Some chart settings and dpi setting used when saving plots.
  • plot stratigraphy: Fix for when h_toc/h_gs are NULL. Fix when there are gaps in stratigraphy layers. Button for minimizing and maximizing stratigraphy plot (Thanks to Simon O'Connor!). Feature to write hydro explanation text for stratigraphy plots (Thanks to Simon O'Connor!). Bug fixes.
  • Section plot: Grouped water level plots.
    • Templates for section plot: New templates allows much more customization of the plot visuals. The majority of the plot objects can be adjusted using the matplotlib methods.
  • PrepareForQgis2Threejs: Colors are now set using zz_stratigraphy_plots.
  • New utility "List of obsids from selected features". Can be used to get a list of obsids for use in other QGIS features or to save a selection of obsids.
  • FieldLogger import: Bug fix when setting datetime filter. Fixed a bug where import of depth didn't work
  • Calculate w_levels level_masl: Added checkboxes for more finegrained filtration (Feature overwrite previous calculation. Feature stop if h_toc is NULL.)
  • General csv import: Added "Factor" line edit for value columns to multiply the values by a factor during import (useable for unit conversion).

Version 1.4

The version 1.4 is now released for public use. This version contains changes to the database structure (mostly new tables and foreign key dependencies), a couple of new visible features and many improvements to existing features. The plugin is only garanteed to work with a database of version 1.4. Older databases can in most cases be updated using the feature Export to another spatialite db.

Database changes

  • Table w_qual_field: new column depth replaces column flow_lmp. Column depth is assumed to be the depth from which the measured or sampled water was extracted.
  • Table comments: New table to store any type of comment for obsids.
  • A couple of new data domain tables (zz_tables)
  • Hard coded plot settings like colors migrated to zz_tables (ex: zz_capacity_plots, zz_stratigraphy_plots)
  • Automatically updated geometries and east-north fields in obs_points: Database triggers in table obs_points keeps the geometries and east and north field synced.

Plugin changes

This list contains the most important changes only.

Completely new features

  • General csv import: Feature for importing csv-files or QGis vector layers into any of the database table. This feature removes the need for separate import features for each table. The older import features remain but will be removed in future versions.
  • Diveroffice import: Feature for importing files from diver office (useful for importing many diveroffice files at once instead of only one at the time).
  • Interlab4 import: Feature for importing files using interlab4 format (some Swedish labs use this format).
  • FieldLogger import: Feature for importing files using the Fieldlogger (Android/ios app) output format.
  • Fieldlogger export: Feature for creating input files for FieldLogger (Android/ios app). Very useful when making field measurements.

Updates in existing features

  • Calcultate logger w level from logger water head: Many new features to speed ut the process of calculating the logger position (and thus calculating level above sea level from logger head).
  • Custom plot: New features for adjusting the plots (remove mean, apply factor, apply offset) and features only appearing if python pandas is correctly installed (resampling and rolling mean).
  • Custom plot: The built in matplotlib "Edit curves lines and axes parameters" can now be used (clicking Redraw button fixes the axes and lables).
  • plot stratigraphy: Stratigraphy units, plot color and symbols are now editable by the user, so is also the water capacity (by making changes in the tables zz_capacity_plots and zz_stratigraphy_plots)
Clone this wiki locally