Remember to list any API changes below in `doc/source/api_changes.txt`.

Version 0.17
------------

* Update RELEASE.txt regarding Azure Pipelines after making changes to
  scikit-image-wheels repo.
* Finalize ``skimage.future.graph`` API.
* Finalize ``skimage.future.manual_segmentation`` API.
* In ``skimage.filters.median``, remove the parameters ``mask``, ``shift_x``,
  and ``shift_y``.
* Remove deprecated arguments ``beta1`` and ``beta2`` from function ``skimage.filters.frangi``
* Remove deprecated arguments ``beta1`` and ``beta2`` from function ``skimage.filters.hessian``
* Remove unused arguments ``dtype`` in ``imread`` functions. See #3918.
* Remove ``rough_wall`` from ``skimage.data.__init__``.
* Remove parameter ``img`` from skimage.morphology.skeletonize_3d.

Version 0.18
------------

* Set ``preserve_range`` to ``False`` in ``radon`` and remove the
  deprecation warning.
* Remove deprecated function ``guess_spatial_dimensions`` in ``skimage.color.__init__``.
* Remove deprecated function ``load`` in ``skimage.data.__init__.py``.
* The following functions are deprecated and should be removed in 0.18:
  `skimage.measure.compare_mse`,
  `skimage.measure.compare_nrmse`,
  `skimage.measure.compare_pnsr`
  `skimage.measure.compare_ssim`
* `skimage/measure/tests/test_simple_metrics.py` should also be removed
* make coordinates='rc' the default in ``segmentation.active_contour``
* remove deprecated ``bc`` argument in ``segmentation.active_contour``
* In ``skimage/measure/_ccomp.label_cython`` remove the deprecated parameter
  ``neighbors`` and update the tests. Set the default value of ``connectivity``
  to 2.
* In ``skimage/morphology/convex_hull.py`` remove the deprecated parameter
  ``neighbors`` and update the tests. Set the default value of ``connectivity``
  to 2.
* In ``skimage.features.corner_peaks``, remove the warning.
    * In the following docstrings, remove the explicit setting of ``threshold_rel=0``
        * ``skimage/feature/brief.py::BRIEF``
        * `` skimage/feature/corner.py::corner_harris``
        * `` skimage/feature/corner.py::corner_shi_tomasi``
        * `` skimage/feature/corner.py::corner_foerstner``
        * `` skimage/feature/corner.py::corner_fast``
        * `` skimage/feature/corner.py::corner_subpix``
        * `` skimage/feature/corner.py::corner_peaks``
        * `` skimage/feature/corner.py::corner_orientations``
    * In ``skimage/feature/orb.py::_detect_octage`` remove explicitely setting
      ``threshold_rel=0``.
* In ``skimage/transform`` remove histogram_matching.py.
* In ``skimage/restoration/_denoise.py`` remove warning regarding
  ``rescale_sigma``.
    * In ``skimage/restoration/_cycle_spin.py::cycle_spin`` unskip the doctest
      now that the denoise warning is gone.

Version 0.19
------------

* In ``skimage/draw/draw.py`` remove ``circle'' and related tests.
* In ``skimage/segmentation/morphsnakes.py`` remove
  ``circle_level_set'' and related tests.
* In ``skimage/morphology/_flood_fill.py`` replace the deprecated parameter
  in flood_fill() ``inplace`` with ``in_place`` and update the tests.
* In ``skimage/filters/rank/generic.py'' remove tophat and bottomhat (See #3614)
* Remove the definition of `skimage.util.pad` and
  skimage/util/tests/test_arraypad.py.
* Remove the warnings in ``skimage/filters/ridges.py`` from sato and hessian
  functions.
* In ``skimage/color/colorconv.py``, remove  `rgb2grey` and `grey2rgb`.
* In ``skimage/color/colorconv.py``, remove the deprecation warning
  from `rgb2gray`.
* In ``skimage/transform/radon_transform.py``, remove ``deprate_kwarg``
  decoration from ``iradon``.
* In ``skimage/measure/profile.py``, raise a ValueError instead of the
  warning when order > 0 and input array is bool in profile_line.

Other
-----
* Remove the conditional warning logic when ``numpy`` is set to >= 1.15.0
  for ``scipy`` and ``pywl`` (``pywavelet``) in ``test_lpi_filter.py`` and
  ``test_denoise.py`` regarding multidimensional indexing.
* Remove the conditional import and function call when ``numpy`` is set
  to >= 1.16.0 in ``skimage/util/arraycrop.py``.
* Remove custom fused type in ``skimage/filters/_max_tree.pyx`` once
  #3486 fused types is merged.
* Check whether imread wheels are available, then re-enable testing imread
  on macOS. See https://github.com/scikit-image/scikit-image/pull/3898
* When ``numpy`` is set to > 1.16, one may simplify the implementation of
  of `feature.blob_log` using the vectorized version of ``np.logspace``.
* Remove conditional import of ``scipy.fft`` in ``skimage._shared.fft`` once
  the minimum supported version of ``scipy`` reaches 1.4.
* When ``numpy`` is set to >= 1.16, simplify ``draw.line_nd`` by using the
  vectorized version of ``np.linspace``.
* Monitor when multibuild devel gets merged into master for python 3.8
  compatibility https://github.com/matthew-brett/multibuild/issues/284
  and update osx_install to point to the correct branch
* Remove pillow version related warning for MPO file format in
  `io._plugins.pil_plugin.imread` when upgrading pillow min version to
  6.0.0
* When ``numpy`` is set to >= 1.16, remove the warning assertion in
  ``skimage/exposure/tests/test_exposure.py::test_rescale_nan_warning``
  regarding ``invalid value encountered in reduce``.
* When ``numpy`` is set to >= 1.17, revisit the warning assertion in
  ``skimage/exposure/tests/test_exposure.py::test_rescale_nan_warning``
  regarding ``Passing `np.nan` to mean no clipping in np.clip``.
* Remove direct allocation of ``output`` from ``skimage/filters/_gaussian.py``,
  when ``scipy`` upgrades to 1.1.
