Skip to content

Releases: OSOceanAcoustics/echopype

v0.11.1a2 (release assets staging)

25 Dec 22:12
9165ca4

Choose a tag to compare

Pre-release

This pre-release is for staging new files in release assets in the upcoming release.

v0.11.1a1 (release assets staging)

06 Dec 00:09
e9ab229

Choose a tag to compare

Pre-release

This pre-release is for staging new files in release assets in the upcoming release.

v0.11.0

15 Oct 15:53
98bed9f

Choose a tag to compare

Overview

This release includes a number of major changes, in particular:

  • additional functions for detecting transient noise, seafloor, and shoals
  • upgrade to use Zarr >3, and along with this change, discontinue support for Python 3.10 and Zarr <3, and add support for Python 3.13

Thanks to @LOCEANlloydizard , @dbashford-NOAA , @shivam096, and @leewujung for their contributions!

New features

Enhancements

Bug fixes

Infrastructure

Documentation

New Contributors

Full Changelog: v0.10.1...v0.11.0

v0.10.1

05 Apr 22:43
b20995b

Choose a tag to compare

Overview

This release includes changes that improve performance of compute_Sv and compute_MVBS and fixes of a typo and a bug.

Enhancements

  • Expand ping_time preemptively in get_vend_cal_params_power to avoid tiny chunks by @ctuguinay in #1483
  • Enhance compute_MVBS feasibility via flox reindex=False changes by @ctuguinay in #1470

Bug fixes

Documentation

New Contributors

Full Changelog: v0.10.0...v0.10.1

v0.10.0

22 Feb 21:32
73972ac

Choose a tag to compare

Overview

This release includes critical updates to migration to support python 3.12, use the new xr.DataTree functionality, and many other changes to resolve deprecation warnings and small bugs. There are a number of pinned dependencies we are continuing to work on.

Enhancements

Bug and warning fixes

Infrastructure

Others

Full Changelog: v0.9.1...v0.10.0

v0.9.1

30 Dec 00:09
3df9d83

Choose a tag to compare

Overview

This release includes a number of small fixes and enhancements. An important component is to set the max supported python version to <3.12, before we fully migrate to using the new xarray.DataTree in the next release with breaking changes.

Enhancements

Bug and warning fixes

  • Handle NaN in apply_mask input mask by @leewujung in #1376
  • EK60 Conversion: Drop channels that don't have power data by @ctuguinay in #1383
  • Skip Parsing Invalid EK80 Environment Datagram(s) by @ctuguinay in #1387
  • Fix 'Division by Zero' error when converting EK80 files without Sound Velocity Profile Depth value(s) by @ctuguinay in #1381
  • Add error warning for all NaN lat/lon in get_distance_from_latlon by @leewujung in #1403
  • Updated paths in test_align_to_ping_time_glider_azfp to use pytest fixture by @oftfrfbf in #1414

Documentation

Others

New Contributors

Full Changelog: v0.9.0...v0.9.1

v0.9.0

08 Aug 17:10
aa01b02

Choose a tag to compare

Overview

This release includes a number of new features and performance enhancements, as well as fixes for bugs and warnings. We have fully switched to using the trunk-based development workflow in this release.

New features

  • Add noise and attenuation functions from Ryan et. al. 2015 and echopy by @ctuguinay in #1316
  • Add .bot and .idx files to EK60/EK80 parsing by @ctuguinay in #1318
  • Add index aggregation option for cleaning mask functions by @ctuguinay in #1326
  • Added alpha-version code for new AZFP6 format by @dash-uvic in #1323
  • Use latest MRU parser version and enable ep.consolidate.add_location can be based off datagram type by @ctuguinay in #1359

Enhancements

  • Support lazy-loaded EK80 broadband-complex data by @leewujung in #1311
  • Allow MVBS into ep.mask.apply_mask, and add alignment check for target variable and mask by @ctuguinay in #1345
  • Enhance ep.calibrate.compute_Sv scalability by enabling EchoData chunking and removing eager computation by @ctuguinay in #1331
  • Use Echodata Platform and Beam_group1 variables to compute depth for EK60/EK80 by @ctuguinay in #1319
  • Allow waveform mode "FM" in calibrate by @ctuguinay in #1363
  • Allow external arrays in add_depth and add an universal ping time alignment function by @ctuguinay in #1369

Bug and warning fixes

Documentation

Others

New Contributors

Full Changelog: v0.8.4...v0.9.0

v0.8.4

24 Apr 17:40
2a0e637

Choose a tag to compare

Overview

This release includes a few performance enhancements, bug fixes, and improving warnings/error messages. We are also preparing to switch to using the trunk-based development workflow in the next release to streamline new contributions.

Enhancements

  • Upgrade compress_pulse to use parallelized convolution by @anantmittal in #1208
  • Optimize harmonize_env_param_time by @anantmittal in #1235
  • Optimize frequency differencing with dask by @anantmittal in #1198
  • Optimize get_vend_cal params_power by @anujsinha3 in #1285
  • apply_mask changes: Allow multi-channel masks, allow the depth dimension, and simplify fill value by @ctuguinay in #1230
  • Update _calc_Sv_offset for AZFP parsing by @leewujung in #1304
  • Move compute_Sv_offset to inside of AZFP parser by @ctuguinay in #1307
  • Support calibration of EK80 broadband complex data from sequential pinging by @ctuguinay in #1302
  • Add skipna argument to compute_MVBS/NASC to control mean behavior over NaN elements by @ctuguinay in #1269

Bug fixes and warnings

  • Fix error parsing integer in frequency-differencing equation by @leewujung in #1278
  • Fix time encoding to use int64 and "nanoseconds since 1970-01-01 00:00:00Z" by @ctuguinay in #1299
  • Add warnings and raised errors for add_location by @ctuguinay in #1296

Others

New Contributors

Full Changelog: v0.8.3...v0.8.4

v0.8.3

25 Dec 19:11
b895d09

Choose a tag to compare

Overview

This release includes a bug fix for changes from the previous release and a few functionality enhancements.

Enhancements

  • Add parser support for EK80 MRU1 datagram (#1242)
  • Add support for consolidate subpackage functions to accept both in-memory or stored datasets (#1216)
  • Add test for ES60 spare field decoding issue (#1233)
  • Add test for EK80 missing receiver_sampling_freq error (#1234)

Bug fixes

  • Fixed reshape bug in pad_shorter_ping that was remnant from use_swap full refactoring (#1234)

v0.8.2

21 Nov 03:58
8ed2c7d

Choose a tag to compare

Overview

This release includes a number of important performance enhancements, bug fixes, and under-the-hood refactoring to improve code readability.

Enhancements

  • Full refactor of the functionality to directly storing parsed data to zarr before set_groups_* (#1185, #1218, #1070)
    • This avoids memory expansion during NaN padding across channel
  • Improve compute_MVBS using flox (#1124)
  • Revive and improve compute_NASC using flox (#1167)
  • Refactor AZFP XML parser
    • Improved XML parsing by using xml.etree.ElementTree to be consistent with other XML parsers in echopype (#1135)
    • Parse more parameters and store in the resulting EchoData objects (#1135)
    • Add partial support for AZFP multiple phase settings (#1182)
  • Overhaul AZFP Environment group
    • Set mandatory variables not in data to NaN (sounds_speed_indicative, absorption_indicative) (#1226)
    • Parse and store AZFP pressure data when exist (#1189, #1226)
  • Add utils.misc.depth_from_pressure function for converting pressure to depth (#1207)
  • Remove unused mechanism to selectively parse some EK datagrams (#1214)
  • Enhancements of EchoData.update_platform method
    • Factor out utility functions to a submodule (#1209)
    • Auto-assign timestamp for fixed-location external data using first ping_time(#1196)
  • Add support for consolidate subpackage functions to accept both in-memory or stored datasets (#1216) [NOT MERGED]

Bug fixes

  • Fix EchoData.to_zarr encoding (#1128)
    • Eliminate preferred chunks
    • Ensuring chunk alignment and encoding only when handling dask arrays
  • Fix scaling bugs in compute_NASC (#1167)
  • Fix UnicodeDecodeError for ES60 files (#1215)
  • Handle missing receiver_sampling_frequency for EK80 data (#1219)

Infrastructure and refactoring

  • Add support for running individual test files (#1166)
  • Add module based testing (#1180)
  • Update CI to barebone python, without conda (#1192)