v1.0.2.1 (unreleased)
=====================
No Changes yet

v1.0.2.1 (2022-07-08)
=====================
* (breaking) fix misspelling of ``convert_exchange``subcommand
* Will not rely on the python universal newlines for reading exchange data
* Will now combine CDOM parameters into a single variable with a new wavelength dimmension in the last axis.
* Update the WHP error name lookup to be compatable with cchdo.params v0.1.18, this is now the minimum version
* Add an ``error_data`` attribute to ``ExchangeParameterUndefError`` that will contain a list of all the unknown ``(param, unit)`` pairs in an exchange file when attempting to read one.
* Add an ``error_data`` attribute to ``ExchangeDataFlagPairError`` that will contain a list of all the found flag errors as an xarray.Dataset
* Automatically attempt to use BTLNBR as a fallback if SAMPNO is not present in a bottle file.
* Automatically reconstruct the date of a missing BTL_DATE param if only BTL_TIME is present.
* Add ``--dump-unknown-params`` option to the status_exchange subcommand which will dump an unknown param list into a json format into the ``out_dir``.
* Performing a flag check is now behind a feature switch (defaults to true, for the status-exchange it is set to false)
* If a TIME column contains entirely the string "0" (not 0000) it will be ignored

v1.0.2.0 (2022-04-12)
=====================
This release includes an almost complete rewrite of how the exchange to netCDF conversion works.
It now more directly uses numpy and has significant memory reduction and speed improvements when converting CTD (bottle is about the same).

* (breaking) The CLI was changed to support multiple actions which caused the exchange to netCDF functions to be moved to a sub-command "convert-exchnage" with the same interface as before.
* (breaking) The "source_C_format" attribute has been removed in favor of only having one "C_format" attribute, the "source" of the value in the C_format attribute will be listed in a new attribute "C_format_source" with the value of either "input_file" if the C_format was calculated from a text based input, or "database" if the C_format was taken from the internal database.
* (temporary) the netCDF to exchange function is not quite ready yet to work as an xarray accessor.
* (provisional) the order which netCDF variables appear is now in "exchange preferred" order.

Bug Fixes
---------
* Fixed an issue where the WOCE sumfile accessor would misalign latitude columns near the equator since they lacked a digit in the tens place.
* Fixed an issue where the WOCE sumfile accessor would use "pressure levels" of CTD source netCDF files as the number of bottles.
* Fixed an issue where stations might occur in an unexpected order.

v1.0.1.3 (2021-08-25)
=====================
This release fixes many of the issues identified after the initial "1.0.0.0" release. Highlights include:

* Explicitly set the ``_FillValue`` attribute for the bottle closure time variable.
* The dtype for real number variables has been changed from ``float`` to ``double``
* If the source data is an "exchange csv", a ``source_C_format`` attribute will (with some exceptions) be present on the real number data variables.

v1.0.1.2 (2021-03-11)
=====================
This release fixes a typo in the pyproject.toml file which would cause the _version.py file to be invalid.

v1.0.1.0 (2021-03-11)
=====================
Hopefully this fixes the errors which prevented the project from being published automatically to pypi.

v1.0.0.0 (2021-03-11)
=====================
After a whole bunch of testing, meetings, more testing, arguments, and a lot of work. We have declared the current status of the project as "good enough" for a 1.0.0 release.

There is much work to be done, especially since not all our files convert currently, but we think the ones that do convert are ready for public consumption. Unless something crazy goes wrong or is discovered, format changes should only be additive in nature (e.g. new attributes on variables).

The version will hopefully use the following (close to semver):

x.y.z

Where:

* x is incremented when a real breaking change to the netCDF output format is made.
* y is incremented when things are added to the netCDF format that should not break code which relies on previously existing attributes
* z is incremented for normal software releases that don't change the netCDF output.

.. note::
  The version number was since updated to be w.x.y.z where w.x is the CCHDO netCDF format version and y.z is the software versions