Releases: SIO-ODF/ctdcal
Releases · SIO-ODF/ctdcal
v0.1.5b
Final beta
Version update addressing a number of changes since v0.1.4b with issues planned and logged in milestone 1.
This is the final version of CTDCAL prior to a major refactor, with this version emphasizing future support, bug fixes, and legacy code.
General & Github integration
- Transition to Python 3.11 and remove numerous depreciation errors
- Repair CodeCOV actions
- Fix a number of unit tests
- Pytest actions
- Changes for updated modules
- Implement RINKO unit tests
Documentation
- Update missing entries in CTDCAL API
- Fixes for Readthedocs documentation generation
- Assessed and itemized a number of TODO markers
Code
Flagging
- Implement new flags file to consolidate multiple sensor types
Configuration and directories
- Start consolidation of user settings into a .YML config file
- Retire the scratch_folder from the old data folder setup
Methods
- Add support for new soak detection method
- Add support for turbidity and CDOM fluorometer sensors
- Fixes to oxygen fitting from recent cruise experiences
Tools
- Improvements to QC tool
- Plotting residuals
- Support for visualizing oxygen and temperature
- Minor bugfixes
- Implement a number of ODF discrete file warnings for analyst's reference
- SBE35 refT, ODF autosal, ODF Winkler oxygen
- Support to merge multiple final bottle products for different CTDs
Plotting
- Add param-vs-param plots
v0.1.4b
The UX Release
Modules
ctdcal.io
- two new functions for reading Exchange data files from local filesystem or URL,
load_exchange_btl
andload_exchange_ctd
(see CCHDO File Formats)
Miscellaneous
- Logging messages of all levels are now logged to
ctdcal.log
file ctdcal
CLI now has a--debug
flag to display all logging levels (instead of WARNING and above)- Tutorial notebooks on how to use
ctdcal
can be found in the docs ctdcal quick-convert
CLI command to create Exchange ct1 files from Sea-Bird .cnv files, without performing any calibrationctdcal qc
CLI command to launch interactive data flagging tool- Data flagging tool now has an exit button to halt the local server process
- Added Wetlabs Fluorometer to
convert.py
- Start testing
process_bottle
andoxy_fitting
modules - By default, only logging levels WARNING and above will be displayed in terminal (see
--debug
addition above) - Fixed bug when loading single station
ssscc.csv
files intofit_ctd
v0.1.3b
What's Changed
Modules
Outdated code from merge_codes
has been removed. Relevant code has already been implemented in flagging
and new io
module.
report_ctd
merged into new ctdcal.io
module
io
- Created new
ctdcal.io
module for all non-ODF-specific reading/writing functions (#39) - Refactor and test
odf_io
(#37)
ctd_plots
- Refactor and test
ctd_plots
(#35) ctd_plots
functions now return axis handle if filename is not given- cmocean is no longer a module dependency
- Hardcoded cruise report plot code removed from
ctd_plots
in favor ofctdcal/scripts/cruise_report.py
script _intermediate_residual_plot()
is now wrapped aroundresidual_vs_pressure()
instead of being a duplicate function
equations_sbe
- Tests for
equations_sbe
(#36) - Conversion functions will now return a list of missing coefficients (instead of first missing in equation)
- Zero-values in input frequency arrays are now NaN'd out by default (applies to sbe3, sbe4, and sbe9 conversions)
Miscellaneous
- Outdated code in top-level
old
folder has been removed in favor ofSBEReader
class andequations_sbe
module - cmocean is no longer a package dependency
- Renamed
master
branch tomain
- Fix sphinx/RTD version bug by importing ctdcal._version instead of importlib.metadata.version("ctdcal")
- Fix GitHub Action
run-tests
bug which triggered twice when pushing tagged commits - Set up Codecov
Initialize testing
- Create tests using pytest for
fit_ctd
andflagging
modules. - Ensure tests pass on multiple OS and python versions using GH Actions and status badges
Fix config loader bug
Include user_settings.yaml
in ctdcal package (as intended), which fixes failing calls to ctdcal.get_ctdcal_config()
PyPI release
This is the first release which should result in a published version on PyPI.
Initial release
Primarily for setting up PyPI