Significant changes to the divest package are laid out below for each release.

===============================================================================

VERSION 0.7.2

- ASAN/UBSAN and Valgrind warnings have been resolved.

===============================================================================

VERSION 0.7.1

- There is no longer a failure if the user does not have write access to the
  DICOM directory being read from.
- R's temporary directory, rather than a hidden directory within the source
  folder, is now used for temporary copies of files when reading subsets.

===============================================================================

VERSION 0.7.0

- Additional attributes for series number and description, sequence name,
  protocol name, slice thickness and slice spacing are now captured from DICOM
  files during conversion.
- readDicom() now accepts a "subset" argument, even when a path is given rather
  than a data frame. In this case scanDicom() is called first, and then the
  requested subset is converted.
- The package is now compatible with an upcoming change in the RNifti package.
- Further upstream improvements.

===============================================================================

VERSION 0.6.1

- The C++ compiler configuration is now properly detected by the configure
  script.
- Warnings from GCC8 and Valgrind have been addressed.

===============================================================================

VERSION 0.6.0

- Upstream improvements, particularly for Philips data, have been integrated.
- The package's continuous integration tests now check it against the dcm_qa
  dataset (see https://github.com/neurolabusc/dcm_qa).
- A workaround has been added for certain undefined behaviour.

===============================================================================

VERSION 0.5.0

- The new sortDicom() function can be used to sort a directory of DICOM files
  into subdirectories corresponding to individual acquisitions.
- It is now possible to read and convert individual files to NIfTI-1 format.
  This will happen whenever an argument to readDicom() is a file rather than a
  directory.
- JPEG-encoded versions of the test files are now provided, to test the package
  more thoroughly.
- Additional attributes, such as inversion time, patient weight and slice
  timing, are now captured, while the calculations for some others have
  changed, to match the current version of dcm2niix. Echo train duration and
  the "EPI factor" have been removed (see
  https://github.com/rordenlab/dcm2niix/issues/127).
- The scanDicom() function now properly concatenates attributes when called
  with multiple paths.

===============================================================================

VERSION 0.4.1

- Fixes for Solaris and OpenJPEG compatibility.

===============================================================================

VERSION 0.4.0

- The data frame returned from scanDicom() can now be passed to readDicom(),
  and the latter gains a "subset" argument, which can be used to select a
  subset of the series to convert.
- The results of scanDicom() now also include the number of files associated
  with each series, and whether or not diffusion direction metadata is
  available.
- Additional attributes containing information about the acquisition are now
  extracted from the ASCII CSA header in Siemens EPI files.

===============================================================================

VERSION 0.3.0

- A configure script has been added to detect OpenJPEG or JasPer libraries. If
  either is available, the package will be able to read DICOM data encoded
  using the JPEG2000 codec.
- The readDicom() function gains a "labelFormat" option, which allows the
  format of image labels to be customised.
- A new "verbosity" level of -1 is now supported, which filters all but warning
  and error messages from dcm2niix's output.
- Spurious date and time information should no longer be returned.

===============================================================================

VERSION 0.2.0

- The readDicom() function is now interactive in suitable sessions, allowing
  the user to choose which DICOM series to convert.
- The new scanDicom() function allows the DICOM files in a directory to be
  scanned without performing any conversion. It returns a data frame
  containing information about the available scan series.
- Both functions now search the current working directory by default.
- Diffusion b-values and gradient vectors, and patient information, are now
  additionally stored as attributes in returned image objects.
- Image cropping and forced stacking options from dcm2niix are now exposed to
  the R interface.
- Gantry tilt correction is now applied to CT images where needed. (Reported
  by John Muschelli.)
- Phase encoding attributes are now handled more robustly.

===============================================================================

VERSION 0.1.2

- The package now behaves correctly on big-endian systems.

===============================================================================

VERSION 0.1.1

- A test has been made more robust.

===============================================================================

VERSION 0.1.0

- First public release.

===============================================================================
