v0.8.0
Overview
This release includes important updates to the raw-converted data format based on adaptation of convention, an efficiency boost for combining multiple EchoData objects, packaging and infrastructure upgrades, and other updates necessitated by these changes.
Enhancement
- Overhaul the
combine_echodatafunction (#1042, #1116)- No longer require spinning up dask client under the hood during combine
- Use
xr.concatdirectly compatible with delayed computation - No longer require destination path as input argument
- Overhaul
EchoData.update_platform(#1060)- Allow adding external variables with arbitrary number of time dimensions, with new time dimensions following an increasing order (e.g.,
time3,time4, etc) - Only allow updating standardized, sonar model-dependent Platform group variables
- Allow adding external variables with arbitrary number of time dimensions, with new time dimensions following an increasing order (e.g.,
Raw-converted data format changes
- Drop the
beamandping_timedimensions for some parameters (#1056, #1083)- The dimensions of these parameters were previously expanded to conform with convention requirements, but this inflated the data volume, especially for in memory operations, and made the calibration code confusing
- Standardize
backscatter_r/ilong_name in theSonar/Beam_groupXgroup, and correct units (#1047) - Standardize use of
transmit_frequency_start/stopfor all echosounder models (#1091) - Move filter coefficients and decimation factor to variables in EK80
Vendor_specificgroup (#1044, #1046, #1105) - Add new
Provenancegroupcombination_*attributes to combinedEchoDataobject, mirroring theconversion_*attributes (#1113) - Bring more consistency in the
Platformgroup across sensors on conversion (#1058, #1061) - Add missing mandatory variables and other data format changes (#1094, #1099, #1101, #1102, #1103, #1104, #1107, #1114)
- Set time arrays explicitly to datetime64[ns] in parsers and remove duplicated timestamp stuff (#1117)
Packaging and infrastructure
- Remove Pandas<2 pinning (#1080)
- Pin netcdf to >1.6 and add explicit encoding (#1112)
- Update CI to prepare for python 3.11 (#1108)
- Switch github action for get-changed-files (#1118)
- Fix discrepancy on test log output (#1119)
Others
- Set and fix encoding for variable encoding (#1072)
- Specify handling for expected string type
- Sanitize and set encoding as part of EchoData
- Handling problematic NMEA messages when setting lat/lon in Platform group (#1067)
- Update permission check filename to be UUID to make it thread safe (#1110)
- use
pulse_formfor EK80 transmit type checks (#1091) - Factor out a normalization factor from pulse compression function for flexible use (#1105)
- Add existence checking for angle parameters in
consolidate.add_splitbeam_angle(#1105) - Revise qc function to clean up reversed time (#1065)
- Update matplotlib call to register EK500 colormap (#1068)
- Temporarily remove
compute_NASCfor debugging and overhaul (#1136) - Remove the deprecated
preprocesssubpackage (#1077, #1082) - Remove the
ZarrCombinemodule since it is no longer used (#1117) - Remove outdated
ui_param(#1071)
Documentation
- Add rendering for example
EchoDataobjects for all supported echosounders to show the updated format (#1089) - Restructure TOC to have separate Raw data formats and Data Processing sections, each with new subpages (#1093, #1132, #1134)
- Add discussion on z-axis vertical coordinate system and variables (#1133)
- Add bibliography page linked from inline citations (#1137)